php – 如何在mysql中搜索JSON数据?

我用json_encoded将数据插入数据库.
现在我想搜索功能”,但我不能.

MySQL查询

SELECT  `id`,`attribs_json` 
FROM  `products` 
WHERE  `attribs_json` REGEXP  '"1":{"value":[^"3"$]'

这个查询显示了所有的行与键“1”,值是任何东西,不是值“3”

我的资料是:

{"feature":{"1":{"value":"["2","3"]"},"2":{"value":["1"]},"5":{"value":""},"3":{"value":["1"]},"9":{"value":""},"4":{"value":"\u0633\u0627\u062a\u0646"},"6":{"value":""},"7":{"value":""},"8":{"value":""}
           },"show_counter":"0","show_counter_discount":""
}}
如果你有MysqL版本> = 5.7,那么你可以试试这个 –
SELECT  JSON_EXTRACT(name,"$.id") as name
 FROM table
 WHERE JSON_EXTRACT(name,"$.id") > 3

输出

+-------------------------------+
| name                          | 
+-------------------------------+
| {"id": "4","name": "Betty"}  | 
+-------------------------------+

请查看参考链接了解更多详情https://dev.mysql.com/doc/refman/5.7/en/json-search-functions.html

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...