[{"id":"840f0737-df1d-47ae-bb0a-359b01fe0608","tags":[{"product":null,"links":null,"id":"adf72f47-7f61-4239-8392-b9bcc127fa80","name":"\u65B0\u589E","color":"green","productId":"0995490e-43fc-4d6e-bc8d-8e66f38b0c63"}]},{"id":"d5d9cdef-8854-4505-89be-a2bbc3cb4482","tags":[{"product":null,"links":null,"id":"adf72f47-7f61-4239-8392-b9bcc127fa80","name":"\u65B0\u589E","color":"green","productId":"0995490e-43fc-4d6e-bc8d-8e66f38b0c63"}]},{"id":"3dc3dd55-35b0-4d23-bf62-47bc3650e4ee","tags":[{"product":null,"links":null,"id":"adf72f47-7f61-4239-8392-b9bcc127fa80","name":"\u65B0\u589E","color":"green","productId":"0995490e-43fc-4d6e-bc8d-8e66f38b0c63"}]},{"id":"80d84fbc-d0f8-4e4a-947f-e3e4de9b49b2","tags":[{"product":null,"links":null,"id":"adf72f47-7f61-4239-8392-b9bcc127fa80","name":"\u65B0\u589E","color":"green","productId":"0995490e-43fc-4d6e-bc8d-8e66f38b0c63"}]},{"id":"9152b7ca-0186-4fe3-a26f-5a05f322db07","tags":[{"product":null,"links":null,"id":"adf72f47-7f61-4239-8392-b9bcc127fa80","name":"\u65B0\u589E","color":"green","productId":"0995490e-43fc-4d6e-bc8d-8e66f38b0c63"}]}]
Json Value 和Json Query 函数也可以在SQL语句中使用。
Json Value 函数返回一个值,而Json Query 函数则用来返回一个对象或数组。
比如我们来看下边这一段JSON:
{
"a": "[1,2]",
"b": [1, 2],
"c": "hi"
}
在这个例子中,可见“a”和 "c" 的值均为字符串类型,而“b” 的值是一个数组。
那么接下来,我们来看使用Json Value 和Json Query 函数 分别可以返回什么结果:
Path | JSON_VALUE 返回 | JSON_QUERY 返回 |
---|---|---|
$ | NULL or error | { "a": "[1,2]", "b": [1,2], "c":"hi"} |
$.a | [1,2] | NULL or error |
$.b | NULL or error | [1,2] |
$.b[0] | 1 | NULL or error |
$.c | hi | NULL or error |
那么我们在系统中怎样使用呢?比如我们可以结合表值函数来使用,如下图所示。
首先使用 JsonQuery 返回 [1,2], 然后使用表值函数 UnwindJson 将其展开。最终的结果为: