是否有任何方法可以在 MySQL Select 语句中使用 JSON 对象中的值?\n
是的,你可以使用 json_extract()。首先,让我们创建一个表 -
mysql> create table DemoTable -> ( -> Data json -> ); Query OK, 0 rows affected (0.63 sec)
使用 insert 命令在表中插入一些记录 -
mysql> insert into DemoTable values('{"Name": "John", "CountryName": "US"}'); Query OK, 1 row affected (0.33 sec) mysql> insert into DemoTable values('{"Name": "Chris", "CountryName": "UK"}'); Query OK, 1 row affected (0.15 sec)
使用 select 语句从表中显示所有记录 -
mysql> select *from DemoTable;
输出
+----------------------------------------+ | Data | +----------------------------------------+ | {"Name": "John", "CountryName": "US"} | | {"Name": "Chris", "CountryName": "UK"} | +----------------------------------------+ 2 rows in set (0.01 sec)
以下是 MySQL Select 语句中使用 JSON 对象中值的查询 -
mysql> SELECT *from DemoTable WHERE json_extract(Data, '$.CountryName') like '%US%';
输出
+---------------------------------------+ | Data | +---------------------------------------+ | {"Name": "John", "CountryName": "US"} | +---------------------------------------+ 1 row in set (0.00 sec)
广告