我的mysql表中有一列包含以下Json数据。
var employees = [
{"firstName":"John", "lastName":"Doe"},
{"firstName":"Anna", "lastName":"Smith"},
{"firstName":"Peter","lastName": "Jones"}
];
现在我想在我的查询中使用此列数据,如
select *
from tb1
left join tb2 on tb1.(this firstName inside my column) = tb2.firstName.
有没有办法在mysql服务器中查询JSON数据?
答案 0 :(得分:0)
mySQL支持JSON但是你必须将列正确设置为JSON(将JSON字符串放在varchar
/ text
NOT 工作。请参阅文档:https://dev.mysql.com/doc/refman/5.7/en/json.html
答案 1 :(得分:0)
假设您使用的是Mysql 5.7版(下面不支持json对象类型),并假设您的列是json类型,则可以使用此查询:
SELECT * from tb1 where yourJsonColumn->'$.firsName' = 'yourDesiredFirstName';
答案 2 :(得分:-1)
当然,但它不会很快
SELECT *
FROM tb1
LEFT JOIN tb2 ON
UPPER(tb1.employee_column) LIKE (UPPER(CONCAT('%"firstName":"', tb2.firstName, '"%')))