SQL JSON_QUERY()函数
内置的SQL JSON_QUERY() 函数用于从JSON对象中提取数据。该函数用于从JSON字符串或表中的列中提取标量(单个)值或整个JSON对象。
如果在找到路径之前发现不合法的JSON表达式,JSON_QUERY()会返回错误,并且如果它不是对象或数组,则以不同的模式返回值,如下所示:
- 在宽松模式下,JSON_QUERY返回null。
-
在严格模式下,JSON_QUERY返回错误。
语法
以下是SQL JSON_QUERY()函数的语法:
参数
- expression - 通常是列的名称或包含JSON文本的变量的名称。
-
path - 指定要提取的属性的JSON路径。JSON路径可以是宽松或严格模式进行解析。如果未指定解析模式,默认为宽松模式。
示例
通过以下查询,我们可以从JSON变量中检索第一个客户端 –
输出
当我们执行上述查询时,输出如下所示−
示例
在下面的示例中,我们将指定松散路径模式以返回标量值,但由于JSON_QUERY()不支持标量值,所以它返回NULL,它只返回对象和数组。-
输出
当我们执行上述查询时,得到的输出如下所示 –
示例
让我们考虑另一种情况,我们将使用严格路径模式,并通过以下查询获取输出:
输出
当我们执行上述查询时,输出结果如下:-
示例
让我们来看一个示例,在这个示例中,我们将使用以下查询来提取列 –
输出
执行上述查询后,输出如下所示−
示例
让我们考虑另一个情况,我们将从JSON字符串中检索标量值,并通过以下查询来检查结果-
输出
执行上述查询后,输出结果如下所示 –
示例
让我们看一个示例,在这个示例中,我们将使用以下查询来检索完整的JSON字符串 –
输出
执行上述查询后,输出结果如下所示 –