SQL Server怎么操作Json格式字段数据

1 json存储

sqlserver 中存储json ,需要用字符串类型进行存储,一般用nvarchar()或 varchar()进行存储,不要用text进行存储,用text时候,json的函数不支持。

2 json操作

主要介绍5个函数:

(1)openJson:打开Json字符串

(2)IsJson:判断一个字符串是不是合法的Json格式。是返回1,否返回0,null返回null。

(3)Json_Value:从Json字符串中提取值。

(4)Json_Query:Json字符串中提取对象或数组。

(5)Json_Modify:更新Json字符串中的属性值,并返回更新的Json字符串。

新建wm_json_demo 表:

CREATE TABLE demo_plus.dbo.wm_json_demo (	id int IDENTITY(1,1) NOT NULL,	json_detail varchar(max) NOT NULL,	CONSTRAINT PK_wm_json_demo PRIMARY KEY (id));

下面以wm_json_demo 为例,演示以上5个json操作相关的函数

INSERT INTO demo_plus.dbo.wm_json_demo (json_detail) VALUES('{"key":3,"value1":10,"value2":[{"vv21":13,"vv22":103}],"value3":null}');INSERT INTO demo_plus.dbo.wm_json_demo (json_detail) VALUES('{"key":4,"value1":15,"value2":[{"vv21":13,"vv22":103}],"value3":"10"}');INSERT INTO demo_plus.dbo.wm_json_demo (json_detail) VALUES('{"key":7,"value1":20,"value2":[{"vv21":13,"vv22":103}],"value3":"15"}');

IsJson:判断一个字符串是不是合法的Json格式。是返回1,否返回0,null返回null。

SELECT	IsJson(json_detail) as IsJsonfrom	demo_plus.dbo.wm_json_demo

SQL Server怎么操作Json格式字段数据

Json_Value:从Json字段中提取值

用法:Json_Value (cloumn_name,’$.json_field_name’) from table

Json_Query:Json字符串中提取对象或数组。

用法:Json_Query (cloumn_name,’$.json_field_name’) from table

SELECT	JSON_VALUE(json_detail,'$.key') as 'key',	JSON_VALUE(json_detail,'$.value1') as value1,	JSON_value(json_detail,'$.value2') as value2,	JSON_QUERY(json_detail,'$.value2') as value2_query,	JSON_VALUE(json_detail,'$.value3') as value3from demo_plus.dbo.wm_json_demo;

SQL Server怎么操作Json格式字段数据

Json_Modify:更新Json字符串中的属性值,并返回更新的Json字符串。

JSON_MODIFY(column_name, ‘$.json_field’, ‘change_info’);

SELECT	JSON_MODIFY(json_detail,	'$.value1',	11) as json_detailfrom	demo_plus.dbo.wm_json_demowhere	JSON_VALUE(json_detail,	'$.key')= 7;

SQL Server怎么操作Json格式字段数据

以上就是“SQL Server怎么操作Json格式字段数据”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注亿速云行业资讯频道。

文章标题:SQL Server怎么操作Json格式字段数据,发布者:亿速云,转载请注明出处:https://worktile.com/kb/p/21251

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
亿速云亿速云认证作者
上一篇 2022年8月29日 下午11:48
下一篇 2022年8月29日 下午11:49

相关推荐

  • mysql数据库拉链表是什么

    拉链表产生背景 在数据仓库的数据模型设计过程中,经常会遇到这样的需求: 1、数据量比较大; 2、表中的部分字段会被update,如用户的地址,产品的描述信息,订单的状态等等; 3、需要查看某一个时间点或者时间段的历史快照信息,比如,查看某一个订单在历史某一个时间点的状态,比如,查看某一个用户在过去某…

    2022年9月24日
    34700
  • PDF转Word SDK效果对比

    Hello 大家好,我是小瘪三。我们打工人平时办公免不了要对一些文档格式行转换。我们将探讨几款主流的 PDF 转 Word SDK,分析它们在我们打工人的实际工作中所呈现的优势与劣势。 Solid:老牌的 PDF to Office 转档库,有几十年的积累。 Aspose: 支持非常多的文件格式互转…

    2023年8月31日
    8500
  • windows谷歌浏览器怎么禁用js

    谷歌浏览器禁用js的方法: 1、点击左上角的三个点然后点击“设置”。 2、进入后下滑点击最下方的“高级”。 3、之后点击“内容管理”。 4、点击开关即可禁用js插件。 以上就是“windows谷歌浏览器怎么禁用js”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都…

    2022年9月8日
    17600
  • 电脑0x80070035找不到网络路径怎么解决

    解决0x80070035找不到网络路径的方法 方法一: 1、我们先单击“网络”,“打开网络和Internet设置” 2、接着我们选择下“网络和共享中心” 3、接着我们选择“更改高级共享设置” 4、接着我们勾选“启用共享以便可以访问网络的用户读取公用文件夹中的文件” 5、到了“网络和共享中心”,我们直…

    2022年9月15日
    75200
  • 对混淆变形的Webshell分析是怎样的

    WebShell是什么? 在最初的时候,Webshell经常被用来作为Web服务器管理员对服务器进行远程管理的一类脚本的简称。后来,随着一些Webshell管理工具的诞生,使得获取Web权限的过程被很大程度地简易化,于是逐渐被称为Web入侵的工具脚本。 Webshell不同于漏洞,而是利用应用漏洞或…

    2022年9月22日
    21800
  • 电脑0x0000001a蓝屏代码怎么解决

    解决方法: 名列前茅种方法: 1、通过蓝屏代码提示,我们分析出这个蓝屏出错代码的缘由是: 代码:0x0000001a 原因:指定的磁盘或磁盘无法存取。 2、ntoskrnl.exe文件是N卡(显卡)的驱动程序文件。如果之前更新过了显卡的驱动程序,那就是它惹的祸。不妨先回滚驱动程序。 3、不行,再找到…

    2022年9月16日
    84200
  • SQLMAP的洋葱模式代理是怎样的

    由于要对外网的网站进行渗透测试,但是大部分网站都有访问频率控制,一旦超过这个频率就直接禁IP。尤其是SQLMAP跑的时候,更是一片“姨妈红”,还没跑完SQLMAP就直接报错退出。 于是就开始研究SQLMAP的代理模式,SQLMAP有两种代理模式,一种是普通代理(HTTP代理),一种是洋葱代理。 我原…

    2022年9月15日
    34600
  • 如何用rank函数排名

    用rank函数排名的方法: 1、首先进入空白单元格,然后输入:=RANK( )来进行排名。 2、然后去点击E2单元格,即可获得rank的名列前茅个参数,然后输入逗号。 3、之后就可以去框选所有的数据,并且去获取函数的第二个参数。 4、然后按下F4,即可对rank函数的第二个参数做绝对引用。 5、按下…

    2022年8月30日
    19000
  • LDAP NULL bind导致登录绕过漏洞分析和修复方案是什么

    LDAP NULL bind匿名绑定导致登录绕过漏洞分析和修复方案 一、背景 1.1LDAP和认证过程 LDAP轻型目录访问协议是一个开放的,中立的,工业标准的应用协议,通过IP协议提供访问控制和维护分布式信息的目录信息。有优异的读性能,但写性能差。 LDAP作为开放的Internet标准,支持跨平…

    2022年9月13日
    48700
  • 知识库的作用

    企业中建立知识库的作用有7点:1、企业知识资产的沉淀;2、企业知识资产有序化规范化;3、加快信息的流动;4、有利于企业知识的复用;5、可以帮助企业实现对员工知识的有效管理;6、有助于员工的学习提升;有助于提升企业的竞争能力。具体我们将在文章中展开介绍。 企业中知识库的建立,可以有效的将信息/知识积累…

    2022年3月18日
    35800
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部