我要做的只是获取一列,然后从中创建一个简单的JSON ARRAY。 FOR JSON让我发疯。下面的代码...
DECLARE @t TABLE (name VARCHAR (64))
INSERT INTO @t
SELECT value
FROM OPENJSON ('["b","c"]', '$')
SELECT name
FROM @t
FOR JSON AUTO
...产生...
[{"name":"b"},{"name":"c"}]
...但是我想要的是...
[ "b", "c" ]
我的问题是我必须说SELECT,当我这样做时,弹出的数组在每个JSON ARRAY元素中都有一个Name-Value对。我认为这应该很简单,还是我只是以错误的方式进行操作,需要使用一些STRING函数?最终,我还是想将结果分配给VARCHAR
。
如果问题似乎很愚蠢,请澄清一下,我得到了很多JSON数组,我希望将它们转换为单列表并进行诸如INTERSECT,UNION和EXCEPT之类的SET操作,并最终获得最终的单列表,然后希望以简单的JSON ARRAY返回。