mysql - 在 MySql 列中查询 JSON

标签 mysql xml json

是否有任何方法可以从存储在 MySql 中的 varchar 或字符串行中的 JSON 中查询特定值?有点像使用 MongoDB(或 couch 或 raven)和老 friend MySql。

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

PS:如果数据存储为 XML 而不是 JSON 会怎么样?

更新:我想添加一些内容以供将来引用:

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

最佳答案

您不能在 MySQL AFAIK 中将 JSON 查询为“JSON”。您可以对该值作为“varchar”执行任何操作,但不能作为“JSON 格式的结构化数据”。换句话说,您可以执行“like”或“=”,但不能执行类似where x.y = 4order by x.z 之类的操作,给定 JSON 结构:

 {
    x: {
        y: 4,
        z: 10 
    } 
}

关于mysql - 在 MySql 列中查询 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5724845/

相关文章:

mysql - 当我尝试在 MySQL 中创建表时,它给出错误代码 1215 : “Cannot add foreign key constraint”

mysql - 每当我提交表单时都会出现 sql 错误

当我为 textView 设置背景时,Android 如何使文本垂直居中

javascript - 在我的网站上显示来自远程服务器的 RSS 源?

javascript - 如何创建表示包含业务对象及其图形表示(jquery DOM 元素)的 Car 对象的 JS 对象

php - 构建 foreach 循环

java - Spring-boot thymeleaf 与@pahtvariable 有问题想从数据库中提取一条记录

xml - 尝试读取 xsl 中的 xml 元素值

java - 是否可以使用 JSONLib 从 getString 获取 null

javascript - 使用数组中的数据动态创建选择框