有什么方法可以在SQL Select语句中使用JSON对象中的值?

时间:2019-03-16 18:51:26

标签: mysql sql json

我想编写一个查询来选择所有记录,其中JSON对象的属性中的值与给定的字符串匹配。例如,假设我有一个表,其中带有用于地址的列,这是一个JSON对象。第一条记录的地址如下:

{
 "addressLine": "123 fake road"
 "city": "Buffalo"
 "state": "New York"
}

第二条记录的地址如下:

{
 "addressLine": "123 fake road"
 "city": "New Haven"
 "state": "Connecticut"
}

是否可以使用给定的单词“ New”编写查询,因为JSON的值包含该字符串,该查询将返回两个记录?谢谢!

1 个答案:

答案 0 :(得分:3)

您可以使用JSON_EXTRACT函数:

SELECT * FROM Table WHERE json_extract(JsonColumn, '$.city') like 'New%'

其他信息