Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Json 在MS SQL中筛选数据_Json_Sql Server_Database_Tsql_Sql Server 2016 - Fatal编程技术网

Json 在MS SQL中筛选数据

Json 在MS SQL中筛选数据,json,sql-server,database,tsql,sql-server-2016,Json,Sql Server,Database,Tsql,Sql Server 2016,大家好,我的数据库中有大量数据,所以我需要一种方法来过滤sql数据,并且只过滤其中的特定数据 e、 g:我想从这个代码中获取名称和文本 INSERT INTO `Employers` VALUES ('rgthtr5','9123123','{"name":"Mohamed","text":"employer","bla":" bla","bla":"bla"}) 您可以使用json\u VALUE从json获取值: declare @tmp table ([code] varchar(10

大家好,我的数据库中有大量数据,所以我需要一种方法来过滤sql数据,并且只过滤其中的特定数据

e、 g:我想从这个代码中获取名称和文本

INSERT INTO `Employers` VALUES 
('rgthtr5','9123123','{"name":"Mohamed","text":"employer","bla":"
bla","bla":"bla"})

您可以使用
json\u VALUE
从json获取值:

declare @tmp table ([code] varchar(10), [ncode] varchar(10), [json] varchar(max))

INSERT INTO @tmp VALUES 
 ('rgthtr5', '9123123', '{"name":"Mohamed1","text":"employer1","bla":"bla","bla":"bla"})')
,('rgthtr6', '9123124', '{"name":"Mohamed2","text":"employer2","bla":"bla","bla":"bla"})')
,('rgthtr7', '9123125', '{"name":"Mohamed3","text":"employer3","bla":"bla","bla":"bla"})')

select 
    [code], 
    [ncode], 
    JSON_VALUE([json], '$.name') as [name], 
    JSON_VALUE([json], '$.text') as [text]
from @tmp
结果:


你的数据库是什么我的数据库是SQLITE我也在ms sql Server上工作我编辑了我的帖子如果你想重新检查它的话?sqlite还是mssqlserver?我可以在sqlite中使用它吗?@Mohamed这在SQL Server中工作。不了解SQLite,因为您的问题带有SQL Server标记。