gpt4 book ai didi

mysql - 如何在 mysql/mariaDB 中对 JSON 列执行 SELECT

转载 作者:可可西里 更新时间:2023-11-01 06:49:27 28 4
gpt4 key购买 nike

如何在 JSON 列上应用 WHERE 子句以对具有两列(id Integer,attr JSON)的表执行 SELECT 查询。 JSON是嵌套的,过滤条件中只允许有一对json键值对。这个键值对可以在Josn的任何地方。

+----+-----------------------------------------------------------------
| id | attr
|
+----+-----------------------------------------------------------------
| 1 | {"id":"0001","type":"donut","name":"Cake","ppu":0.55}
|
| 2 | {"id":"0002","type":"donut","name":"Cake","ppu":0.55,"batters":
{"batter1":100,"batter2":200}}
+----+-----------------------------------------------------------------

最佳答案

在 MariaDB 10.2 中,您可以使用 JSON functions .

例如,如果您想从数据库中选择所有 donut ,您可以:

SELECT * FROM t WHERE JSON_CONTAINS(attr, '"donut"', '$.type');

注意:在 MariaDB 中,JSON 函数适用于所有文本数据类型(VARCHAR、TEXT 等)。 JSON type 只是 LONGTEXT 的别名。

关于mysql - 如何在 mysql/mariaDB 中对 JSON 列执行 SELECT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48804649/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com