我想编写一个查询来选择所有记录,其中JSON对象的属性中的值与给定的字符串匹配。例如,假设我有一个表,其中带有用于地址的列,这是一个JSON对象。第一条记录的地址如下:
{
"addressLine": "123 fake road"
"city": "Buffalo"
"state": "New York"
}
第二条记录的地址如下:
{
"addressLine": "123 fake road"
"city": "New Haven"
"state": "Connecticut"
}
是否可以使用给定的单词“ New”编写查询,因为JSON的值包含该字符串,该查询将返回两个记录?谢谢!
答案 0 :(得分:3)
您可以使用JSON_EXTRACT函数:
SELECT * FROM Table WHERE json_extract(JsonColumn, '$.city') like 'New%'
其他信息