欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SQL?Server解析/操作Json格式字段數(shù)據(jù)的方法實例

 更新時間:2022年08月29日 09:43:48   作者:miaoao611  
SQL SERVER沒有自帶的解析json函數(shù),需要自建一個函數(shù)(表值函數(shù)),下面這篇文章主要給大家介紹了關于SQL?Server解析/操作Json格式字段數(shù)據(jù)的相關資料,需要的朋友可以參考下

1 json存儲

在sqlserver 中存儲json ,需要用字符串類型進行存儲,一般用nvarchar()或 varchar()進行存儲,不要用text進行存儲,用text時候,json的函數(shù)不支持。

2 json操作

主要介紹5個函數(shù):

(1)openJson:打開Json字符串

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

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

(4)Json_Query:Json字符串中提取對象或數(shù)組。

(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操作相關的函數(shù)

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 IsJson
from
	demo_plus.dbo.wm_json_demo

Json_Value:從Json字段中提取值

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

Json_Query:Json字符串中提取對象或數(shù)組。

用法: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 value3
from demo_plus.dbo.wm_json_demo;

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

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

SELECT
	JSON_MODIFY(json_detail,
	'$.value1',
	11) as json_detail
from
	demo_plus.dbo.wm_json_demo
where
	JSON_VALUE(json_detail,
	'$.key')= 7;

3其他

這里附上官網(wǎng)地址,有興趣的小伙伴可以去看看:https://docs.microsoft.com/en-us/sql/relational-databases/json/json-data-sql-server?view=sql-server-ver15

總結

到此這篇關于SQL Server解析/操作Json格式字段數(shù)據(jù)的文章就介紹到這了,更多相關SQLServer解析操作Json內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • sql查詢點滴記錄

    sql查詢點滴記錄

    做.NET有一段時間了,如果說不會sql,那肯定是假的,但是真的掌握嗎
    2011-12-12
  • sqlserver 此數(shù)據(jù)庫沒有有效所有者錯誤的解決方法

    sqlserver 此數(shù)據(jù)庫沒有有效所有者錯誤的解決方法

    此數(shù)據(jù)庫沒有有效所有者,因此無法安裝數(shù)據(jù)庫關系圖支持對象。若要繼續(xù),請首先使用“數(shù)據(jù)庫屬性”對話框的“文件”頁或Alter AUTHORIZATION語句將數(shù)據(jù)庫所有者設置為有效登錄名,然后再添加數(shù)據(jù)庫關系圖支持對象。
    2010-04-04
  • centos7部署SqlServer2019的實現(xiàn)步驟

    centos7部署SqlServer2019的實現(xiàn)步驟

    最近工作需要,需要在服務器上部署一個sql server 數(shù)據(jù)庫,本文主要介紹了centos7部署SqlServer2019的實現(xiàn)步驟,具有一定的參考價值,感興趣的可以了解一下
    2024-01-01
  • SQL Server索引超出了數(shù)組界限的解決方案

    SQL Server索引超出了數(shù)組界限的解決方案

    這篇文章主要介紹了SQL Server索引超出了數(shù)組界限的解決方案,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • mssql 高效的分頁存儲過程分享

    mssql 高效的分頁存儲過程分享

    廢話不多說,直接上結果,相信這也是大多數(shù)搜索答案的人最愿意看的方式。
    2013-03-03
  • SQL Server中的T-SQL的基本對象

    SQL Server中的T-SQL的基本對象

    SQL的基本對象主要有常量,表示符,分隔符,保留關鍵字。
    2010-05-05
  • 詳解SQL Server的簡單查詢語句

    詳解SQL Server的簡單查詢語句

    本篇文章詳細講解了SQL ServerSQL的簡單查詢語句。圖文并茂,方便大家理解與學習。有興趣的朋友可以看下
    2016-12-12
  • SQL Server 數(shù)據(jù)庫優(yōu)化

    SQL Server 數(shù)據(jù)庫優(yōu)化

    設計1個應用系統(tǒng)似乎并不難,但是要想使系統(tǒng)達到最優(yōu)化的性能并不是一件容易的事。
    2009-07-07
  • sqlserver 千萬數(shù)量級分頁存儲過程代碼

    sqlserver 千萬數(shù)量級分頁存儲過程代碼

    千萬數(shù)量級分頁存儲過程,對于大數(shù)據(jù)量數(shù)據(jù)調(diào)用的朋友可以參考下。
    2010-07-07
  • 刪除Table表中的重復行的方法

    刪除Table表中的重復行的方法

    在寫SQL的時候經(jīng)常會有這樣的需求: 在一個Table中會有多條重復的數(shù)據(jù),如何有效的取出來不重復的數(shù)據(jù),或者是刪除掉重復的數(shù)據(jù),或者取出某列重復值的第一條數(shù)據(jù).
    2010-06-06

最新評論