簡體   English   中英

json列中的MySQL 5.7搜索值

[英]Mysql 5.7 search values inside a json column

如何在同一列的兩個JSON數組中搜索值“ ABCD”? 這是方括號內的多個JSON數據,下面添加了示例JSON數據:

[{"id": "ABCD", "TEST1": "2002", "value": "test value1", "comment": ""}, {"id": "ABCD", "TEST2": "2003", "value": "test value2", "comment": ""}]

您可以使用Json_Search()函數。 在此函數中,我們可以將第二個參數設置為oneall 我們將其all用作搜索包含給定值的所有鍵。

SELECT JSON_SEARCH(json_column_name, 'all', 'ABCD');

演示-模式(MySQL v5.7)

SET @json_column_name = '[{"id": "ABCD", "TEST1": "2002", "value": "test value1", "comment": ""}, {"id": "ABCD", "TEST2": "2003", "value": "test value2", "comment": ""}]';

SELECT JSON_SEARCH(@json_column_name, 'all', 'ABCD') AS result;

結果

| result                 |
| ---------------------- |
| ["$[0].id", "$[1].id"] |

在數據庫小提琴上查看

您可以遵循mysql文檔

mysql> SELECT JSON_SEARCH(@j, 'all', 'abc');

您可以在這里搜索任何內容。

文獻:

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM