在MySql列中查询JSON

时间:2011-04-20 02:16:54

标签: mysql xml json

有没有办法从MySql中存储在varchar或string行的JSON中查询特定值?有点像使用MongoDB(或沙发或乌鸦)与老朋友MySql。

我知道即使我查询了这个值,我仍然会遗漏NoSql解决方案的所有功能,但我只需要在MySQL中存储无模式信息。

PS:如果数据存储为XML而不是JSON,该怎么办?

更新:我想添加一些东西供将来参考:

如果您正在寻找在共享主机中使用无架构存储的方法,最简单的方法是注册montodb托管解决方案或couchdb托管解决方案(https://cloudant.com/#! / solutions / cloud例如)。

2 个答案:

答案 0 :(得分:1)

您无法在MySQL AFAIK中将JSON查询为“JSON”。您可以将该值作为“varchar”执行任何操作,但不能执行“JSON格式的结构化数据”。换句话说,您可以执行'like'或'=',但在{J}结构为:

的情况下,您将无法执行where x.y = 4order by x.z之类的操作。
 {
    x: {
        y: 4,
        z: 10 
    } 
}

答案 1 :(得分:0)

为什么要将XML / JSON数据存储为数据库中的一个字段?如果结构包含多个元素,则可以将数据分解为较小的粒度级别。