【MySQL】对JSON数据进行查询
·
MySQL根据JSON字段的内容检索查询数据
- 使用
字段->'$.json属性'进行查询条件 - 使用 json_extract 函数查询,
json_extract(字段, "$.json属性") - 根据json数组查询,用
JSON_CONTAINS(字段, JSON_OBJECT('json属性', "内容"))
MySQL5.7以上支持JSON的操作,以及增加了JSON存储类型
一般数据库存储JSON类型的数据会用JSON类型或者TEXT类型
注意:用JSON类型的话
1)JSON列存储的必须是JSON格式数据,否则会报错。
2)JSON数据类型是没有默认值的。
示例
1、首先我们看到数据表中,Form_Value_一列是josn格式存在的,又想通过其中的一组或者几组键值对来进行查询。
2、通过以下语句就可以通过key,value来进行查询了,如果多个条件,正常加 and 就可以了。
SELECT * FROM core_process where Form_Value_ -> '$.attendancer' = '马立新'

3、如果是Mybatis框架,要把 > 符号转义,像这样用 <![CDATA[ ]]>
<![CDATA[ Form_Value_ -> '$.endDate' < #{endDate,jdbcType=VARCHAR} ]]>
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)