我试图通过不两次生成相同的信息来提高查询的性能。
我想嵌套一些json而不在列名下添加json。
我要嵌套的json存储在另一列中,因此我的查询如下所示:
SELECT
CONCAT(p.branch, p.policyref) AS 'policy_id'
, p.insurer AS 'insurer_code'
, p.Brand AS 'policy_name'
, p.sale_date AS 'sale_date'
, p.start_date AS 'start_date'
, p.end_date AS 'end_date'
, p.status
, p.customer_data_json -- This is the column with the other nested JSON
FROM
dbo.ic_brpolicy p1
WHERE
p.policyref = p1.PolRef@
AND p.branch = p1.B@
FOR JSON PATH
列“customer\u data\u json”是我希望嵌套的json,但是由于列名的原因,它将json嵌套在“customer\u data\u json”下,但是我只想在不创建列名的情况下嵌套数据。
i、 e.这个
"start_date": "2020-06-20T00:00:00Z",
"end_date": "2021-06-20T00:00:00Z",
"status": "ACTIVE",
"drivers": [{
"driver_id": "Prop",
"main_driver": true,
"app_user": true,
而不是
"start_date": "2020-02-27T00:00:00Z",
"end_date": "2021-02-27T00:00:00Z",
"status": "ACTIVE",
"customer_data_json": [{
"drivers": [{
"driver_id": "Prop",
"main_driver": true,
"app_user": true,
正如您所看到的,因为json来自列“customer\u data\u json”,它将信息嵌套在“customer\u data\u json”元素下,我不希望这样做,我只希望它开始“driver”部分。
干杯
1条答案
按热度按时间cidc1ykv1#
正确的语句取决于存储在
customer_data_json
列,但下面的简化示例演示了一种可能的解决方案:结果: