【问题标题】:Using JSON_CONTAINS in MySQL query gets not result在 MySQL 查询中使用 JSON_CONTAINS 不会得到结果
【发布时间】:2020-09-04 04:39:25
【问题描述】:

我想要一个查询返回表 minto_regsix_session 中所有条目的所有字段,这些条目在“day”字段中包含值 2。以下是表格的 phpMyAdmin 屏幕截图,包括包含 JSON 数组的日期字段。

这是我正在使用的 mysql 查询:

SELECT * 
FROM `minto_regsix_session` 
WHERE JSON_CONTAINS(`day`, '2') = 1

查询返回空结果。我希望它从第 2、4 和 5 行返回数据。 为什么这不起作用?

【问题讨论】:

    标签: mysql json


    【解决方案1】:
    SELECT * 
    FROM `minto_regsix_session` 
    WHERE JSON_CONTAINS(`day`, '"2"');
    

    【讨论】:

    • 非常感谢。当我看到它时,它是如此明显,但当时我从未想过。我尝试了双引号和单引号但没有引号,但我是 JSON 新手,我没有想到我需要在单引号中包含双引号。非常感谢。
    • @user3765165 正如文档声称的那样,两个参数都必须是“有效的 JSON 文档”。 '2' 不是有效的 JSON...
    • 这里如何搜索多个值?
    • @CuriousDeveloper 取决于任务。它可以是“至少一个存在”或“一个都不存在”。
    • @Akina 我有与上述类似的表格。我想搜索任何数组中的值,例如,如果输入是 1,2,那么所有包含 1 和 2 或其中任何一个的行。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-10
    • 2021-09-25
    • 1970-01-01
    • 1970-01-01
    • 2020-05-24
    • 1970-01-01
    相关资源
    最近更新 更多