JSON存储
在sqlserver 中存储json ,需要⽤字符串类型进⾏存储,⼀般⽤nvarchar() 进⾏存储,不要⽤text进⾏存储,⽤text时候,json的函数不⽀持。 表数据:
JSON_VALUE 查询SELECT
[shift_name] , [test_result]
FROM [vSkyQMS].[dbo].[test]
WHERE JSON_VALUE([test_result], '$.ShiftDate') like '%2%'
查询结果:
它⽆法直接对,⼀开始是数组形式的JSON 继续过滤,也有可能是我没知道⽅法。欢迎在下⾯留⾔。但是它可以对JSON⾥⾯如果包含数组类型进⾏过滤,也就是可以$.names[1].value 这样形式。并且对于⼤于4000的字符串不建议使⽤。
JSON_OPTIONSELECT shift_name,
shiftInfo.ShiftDate, test_resultFROM test
CROSS APPLY OPENJSON (test.test_result) WITH (
ShiftDate NVARCHAR (200) N'$.ShiftDate' ) AS shiftInfo
WHERE shiftInfo.ShiftDate='222'
查询结果:
对⼀开始是数组的json采⽤OPENJSON()WITH()进⾏查询。发现都可以查询出来。
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- huatuo3.com 版权所有 蜀ICP备2023022190号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务