MySql JSON_CONTAINS 怎么用例如我有要给Attrs字段是个JSON数组需要查出其V=10的结果
可以使用MySQL的JSON_CONTAINS函数来完成这个需求。JSON_CONTAINS函数用于检查JSON数组或对象是否包含指定的值。
假设你的表名为table,字段名为Attrs,可以使用以下SQL语句来查询Attrs字段中V=10的结果:
SELECT * FROM table WHERE JSON_CONTAINS(Attrs, '{"V": 10}', '$');
这个SQL语句中,JSON_CONTAINS函数的第一个参数是要查询的JSON数组或对象,第二个参数是要检查的值,第三个参数是要检查的路径。在这个例子中,'$'表示检查整个JSON数组或对象。
如果你的JSON数组中有多个对象,可以使用以下SQL语句来查询所有包含V=10的对象:
SELECT * FROM table WHERE JSON_SEARCH(Attrs, 'one', '10', null, '$**.V') IS NOT NULL;
这个SQL语句中,JSON_SEARCH函数的第一个参数是要查询的JSON数组或对象,第二个参数是要查找的模式,第三个参数是要查找的值,第四个参数是要查找的起始位置,第五个参数是要查找的路径。在这个例子中,'$**.V'表示查找所有V属性的值。如果JSON_SEARCH函数返回不为NULL,则表示找到了符合条件的对象
原文地址: https://www.cveoy.top/t/topic/ew39 著作权归作者所有。请勿转载和采集!