SQL TABLE thành JSON không có thông tin cột SQL

Nov 26 2020

Tôi đang cố gắng phân tích cú pháp dữ liệu Bảng thành JSON và trong quá trình này, tôi muốn bỏ qua Tên Cột Bảng trong chuyển đổi Bài đăng thành JSON. Dưới đây là đoạn trích mẫu.

DECLARE @table1 TABLE (k1 nvarchar(max), v1 nvarchar(max))

-- Note k1 is unique
INSERT INTO @table1 (k1,v1) VALUES( 'Apple', 'One')
INSERT INTO @table1 (k1,v1) VALUES( 'Banana', 'Two')
INSERT INTO @table1 (k1,v1) VALUES( 'Orange', 'Three')

SELECT k1, v1 FROM @table1
    FOR JSON PATH, WITHOUT_ARRAY_WRAPPER

--output: {"k1":"Apple","v1":"One"},{"k1":"Banana","v1":"Two"},{"k1":"Orange","v1":"Three"}
-- Expected: {"Apple","One"},{"Banana","Two"},{"Orange","Three"}

Đánh giá cao hướng!

Trả lời

1 lptr Nov 27 2020 at 12:51

- nối và tổng hợp chuỗi (string_agg () cho sql2017 trở lên hoặc cho đường dẫn xml () cho sql2016)

select string_agg(concat('{"', string_escape(k1, 'json'), '":"', string_escape(v1, 'json'), '"}'), ',') /*within group (order by k1)*/
from @table1