JSON_CONTAINS

MySQL 函式 Function: JSON_CONTAINS

JSON_CONTAINS 搜寻 JSON 资料

资料表

id tags
1 [“KJ”,“KeJyun”]
2 [“Taiwan”,“Thailand”,“Japan”]
3 [“Basketball”, “Baseball”]

SQL

找出标籤栏位 JSON 资料含有 KJ 的资料,会抓出 id 为 1 的资料

SELECT
  *
FROM
  `tags`
WHERE
  JSON_CONTAINS(tags, '["KJ"]')

找出标籤栏位 JSON 资料含有 TaiwanThailand 的资料,会抓出 id 为 2 的资料

SELECT
  *
FROM
  `tags`
WHERE
  JSON_CONTAINS(tags, '["Taiwan", "Thailand"]')

找出标籤栏位 JSON 资料含有 KJThailand 的资料,会找不到资料,没有一个 JSON 资料同时含有这两笔资料

SELECT
  *
FROM
  `tags`
WHERE
  JSON_CONTAINS(tags, '["KJ", "Taiwan"]')

参考资料