首页 > 解决方案 > SQL查询在只有JSON数据的列中搜索没有键的字符串

问题描述

我需要在只有 JSON 数据的列中搜索一个字符串,例如“ RecId ”。

第一个单元格 JSON 数据:

{“AuditedFieldsAndRelationships”:null,“AuditObjectChanges”:false,“CalculatedRules”:{“AuditHistoryDe​​scription”:{“Calculated”:“Always”,“CalculatedExpression”:{“Description”:null,“FieldRefs”:[“ RecId ” , "Rel_CIComponent_InstalledApplication_Name", "Rel_Software_Id", "Rel_Software_Name"] } } }

图片:

在此处输入图像描述

数据库:Microsoft SQL Server 2014

我在 链接中得到了非常相似的问题解决方案, 但它与密钥有关

SELECT * FROM @table CROSS APPLY OPENJSON(Col,'$.Key') WHERE value ='SearchedString'

但它显示错误 Invalid object name 'OPENJSON '

对于该错误,我尝试了链接中给出的以下解决方案

SELECT compatibility_level FROM sys.databases WHERE name = 'DataBaseName';

但得到以下错误:

在此处输入图像描述

有人可以帮我吗。

标签: sqlsql-server

解决方案


推荐阅读