此表有大约150万行。特定列包含JSON。我需要做的是查询该JSON的列,然后查询特定的布尔键/对" FLAG"在那个JSON。如果那样" FLAG"是True
,我需要将该JSON中的另一个密钥/对更新为Null
值而不是当前的字符串。
对我来说这个棘手的部分是我必须查询JSON本身并运行检查。但它不像我可以像其他语言一样索引JSON,它实际上是一个我需要通过sql-regex查询的字符串。关于如何通过手术将第二个密钥/对更新为null
,我也有点困惑。
Json Start:
{
"flag": true,
"anotherKvP": "some string"
}
How I need the Json to be updated to:
{
"flag": true
"anotherKvP": null
}
答案 0 :(得分:0)
所以我最终遇到了一个名为STUFF ( character_expression , start , length , replaceWith_expression )
的函数,它允许我将字符串中的字符串塞在一起。那是第二部分。
第一部分,在我的FROM
子句中,我选择了我需要分割的值索引,使用PATINDEX ( '%pattern%' , expression )
来收集图案化位置的起始索引。
最后,WHERE
和LIKE
用于匹配"flag": true
的查询。