返回顶部
首页 > 资讯 > 数据库 >SQL Server中JSON 函数的作用是什么
  • 354
分享到

SQL Server中JSON 函数的作用是什么

2024-04-02 19:04:59 354人浏览 薄情痞子
摘要

这期内容当中小编将会给大家带来有关SQL Server中JSON 函数的作用是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。2.1 jsON 函数使用本节中页面中描述

这期内容当中小编将会给大家带来有关SQL ServerJSON 函数的作用是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

2.1 jsON 函数

使用本节中页面中描述的功能来验证或更改JSON文本或提取简单或复杂的值。

有关在sql Server中内置JSON支持的更多信息,请参阅JSON数据(SQL Server)。

2.2 ISJSON

测试字符串是否包含有效的JSON。

2.2.1 例子

2.3 JSON_VALUE

从JSON字符串中提取标量值。

要从JSON字符串而不是标量值中提取对象或数组,请参阅JSON_QUERY(Transact-SQL)。有关JSON_VALUE和JSON_QUERY之间的差异的信息,请参阅比较JSON_VALUE和JSON_QUERY。

2.4 JSON_QUERY

从JSON字符串中提取对象或数组。

要从JSON字符串而不是对象或数组中提取标量值,请参阅JSON_VALUE(Transact-SQL)。有关JSON_VALUE和JSON_QUERY之间的差异的信息,请参阅比较JSON_VALUE和JSON_QUERY。

2.5 JSON_MODIFY

更新JSON字符串中的属性值,并返回更新的JSON字符串。

小结

3 参考文献

【01】https://docs.microsoft.com/zh-cn/sql/t-sql/language-elements/expressions-transact-sql

4 版权

感谢您的阅读,若有不足之处,欢迎指教,共同学习、共同进步。

以下是一些补充

下面是我们熟悉的SELECT及输出格式,后面对JSON的演示基于此SQL:

2、FOR JSON AUTO,Root('') :为JOSN加上根节点若要为FOR JSON加上Root Key,可以用ROOT选项来自定义ROOT 节点的名称:

3、FOR JSON PATH输出:可通过列别名来定义JSON对象的层次结构若要自定义输出JSON格式的结构时,必须使用JSONPATH。

FOR JSON Auto,自动按照查询语句中使用的表结构来创建嵌套的JSON子数组,类似于For Xml Auto特性。  FOR JSON Path,通过列名或者列别名来定义JSON对象的层次结构,列别名中可以包含“.”,JSON的成员层次结构将会与别名中的层次结构保持一致。

这个特性非常类似于早期SQL Server版本中的For Xml Path子句,可以使用斜线来定义xml的层次结构。

4、FOR JSON PATH+ROOT输出:为JOSN加上根节点

5、INCLUDE_NULL_VALUES:值null的字段需要显示出现。为NULL的数据在输出JSON时,会被忽略,若想要让NULL的字段也显示出来,可以加上选项INCLUDE_NULL_VALUES,该选项也适用于AUTO。

6、列的别名,可以增加带有层级关系的节点。比如下面的SQL,增加了一个“SN”节点,把栏位SERNUM和CLIMAT放在里面:

二、 解析JSON格式的数据

1、使用OPENJSON()函数:

2、通过WITH选项,自定义输出列:

三、JSON函数

declare @param nvarchar(max);set @param = N'{    "info":{      "type":1,     "address":{       "town":"Bristol",      "county":"Avon",      "country":"England"     },     "tags":["Sport", "Water polo"]   },   "type":"Basic"  }';

1、ISJSON:测试字符串是否包含有效 JSON。

print iif(isjson(@param) > 0, 'OK', 'NO');

返回:OK

2、JSON_VALUE :从 JSON 字符串中提取标量值。

print json_value(@param, '$.info.address.town');print json_value(@param, '$.info.tags[1]');

返回:Bristol,Water polo

3、JSON_QUERY :从 JSON 字符串中提取对象或数组。

print json_query(@param, '$.info');

{      "type":1,     "address":{       "town":"Bristol",      "county":"Avon",      "country":"England"     },     "tags":["Sport", "Water polo"] }

4、JSON_MODIFY :更新 JSON 字符串中属性的值,并返回已更新的 JSON 字符串。

print json_modify(@param, '$.info.address.town', 'London');

返回:

{    "info":{      "type":1,     "address":{       "town":"London",      "county":"Avon",      "country":"England"     },     "tags":["Sport", "Water polo"]    },    "type":"Basic"  }

四、注意事项

SQL2016 中的新增的内置JSON进行了简单介绍,主要有如下要点:

JSON能在SQLServer2016中高效的使用,但是JSON并不是原生数据类型;  如果使用JSON格式必须为输出结果是表达式的提供别名;  JSON_VALUE 和 JSON_QUERY 函数转移和获取Varchar格式的数据,因此必须将数据转译成你需要的类型。  在计算列的帮助下查询JSON可以使用索引进行优化

上述就是小编为大家分享的SQL Server中JSON 函数的作用是什么了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注编程网数据库频道。

您可能感兴趣的文档:

--结束END--

本文标题: SQL Server中JSON 函数的作用是什么

本文链接: https://lsjlt.com/news/57191.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • SQL Server中JSON 函数的作用是什么
    这期内容当中小编将会给大家带来有关SQL Server中JSON 函数的作用是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。2.1 JSON 函数使用本节中页面中描述...
    99+
    2024-04-02
  • SQL Server DATEDIFF()函数的作用是什么
    SQL Server DATEDIFF()函数用于计算两个日期之间的差异。它返回两个日期之间的时间间隔,该间隔可以是年、季度、月、周...
    99+
    2023-09-22
    SQL Server
  • SQL Server CONVERT()函数的作用是什么
    SQL Server CONVERT()函数用于将一个数据类型的值转换为另一个数据类型的值。它可以用于将字符串转换为数字、日期或时间...
    99+
    2023-09-22
    SQL Server
  • SQL Server函数QUOTENAME的作用是什么
    QUOTENAME函数用于将一个标识符(如表名、列名、数据库名等)包装在方括号中,以便在SQL语句中使用。它的作用是确保标识符在SQ...
    99+
    2023-09-17
    SQL Server
  • SQL Server中的JSON函数怎么使用
    这篇文章主要介绍“SQL Server中的JSON函数怎么使用”,在日常操作中,相信很多人在SQL Server中的JSON函数怎么使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”SQL...
    99+
    2023-06-30
  • SQL Server中JSON函数的用法详解
    目录一、 将查询结果输出JSON格式1、FOR JSON AUTO:SELECT语句的结果以JSON输出。2、FOR JSON AUTO,Root(’&rsquo...
    99+
    2024-04-02
  • SQL Server中JSON 函数如何使用
    SQL Server中JSON 函数如何使用,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。 JSON 函数使用本节中...
    99+
    2024-04-02
  • SQL Server中的聚合函数是什么
    小编给大家分享一下SQL Server中的聚合函数是什么,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!SQL Server中的聚合函数有:1、AVG;2、COUNT;3、MAX;4、SUM...
    99+
    2024-04-02
  • SQL Server中FileStream的作用是什么
    SQL Server中FileStream的作用是什么,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。一、FileStream配...
    99+
    2024-04-02
  • SQL Server中Collation的作用是什么
    SQL Server中Collation的作用是什么,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。  Collation的组成  在讲完字...
    99+
    2024-04-02
  • SQL Server DATEDIFF()函数的用法是什么
    SQL Server DATEDIFF()函数用于计算两个日期之间的差异,并返回指定的日期部分的差值。它的语法如下:DATEDIFF...
    99+
    2023-09-05
    SQL Server
  • sql中lower函数的作用是什么
    lower函数在SQL中的作用是将字符串中的所有字符转换为小写字母。例如,在以下示例中: SELECT LOWER('He...
    99+
    2024-04-15
    sql
  • sql中getdate函数的作用是什么
    GETDATE() 函数是 SQL Server 中一个内置的日期和时间函数,用于获取当前系统的日期和时间。该函数返回一个 date...
    99+
    2024-04-09
    sql
  • sql中exsit函数的作用是什么
    在SQL中,EXISTS函数用于检查子查询返回的结果集是否包含任何行。如果子查询返回至少一行,则EXISTS函数返回TRUE,否则返...
    99+
    2024-04-09
    sql
  • sql中lead函数的作用是什么
    在SQL中,LEAD函数用于访问指定行之后的行的数据。它可以用来获取指定行之后的下一行的数值。LEAD函数可用于在结果集中访问下一个...
    99+
    2024-04-09
    sql
  • sql中round函数的作用是什么
    SQL中的ROUND函数用于将数值四舍五入为指定的小数位数。ROUND函数接受两个参数,第一个参数是要四舍五入的数值,第二个参数是要...
    99+
    2024-04-09
    sql
  • sql中replace()函数的作用是什么
    在SQL中,REPLACE()函数用于替换字符串中的子字符串。它接受三个参数:原始字符串、要替换的子字符串和替换后的新字符串。REP...
    99+
    2024-04-09
    sql
  • sql中format函数的作用是什么
    在 SQL 中,FORMAT 函数用于格式化数值、日期和时间的显示方式。其作用是将数值、日期和时间按照指定的格式展示出来,例如将数字...
    99+
    2024-04-09
    sql
  • sql中count函数的作用是什么
    在SQL中,COUNT函数的作用是用来统计查询结果集中行的数量。它可以用来计算满足特定条件的行的数量,也可以用来简单地统计表中所有行...
    99+
    2024-04-09
    sql
  • SQL中cast函数的作用是什么
    cast函数用于将一个数据类型转换为另一个数据类型。它可以用来将一个列或值转换为不同的数据类型,例如将一个字符串转换为整数,或将一个...
    99+
    2024-04-09
    SQL
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作