mysql中判断元素是否在某个json集合中

12.18.3 查找JSON值的函数_json_contains-CSDN博客
 

SELECT gsi.id AS spu_id,gsi.`name`, gsi.merchant_id, m.merchant_name AS merchant_name, gsi.adapt_merchant
FROM hth_goods_spu_info gsi
JOIN merchant m ON gsi.merchant_id = m.id
WHERE (gsi.merchant_id IN (SELECT id FROM merchant) OR JSON_UNQUOTE(JSON_EXTRACT(gsi.adapt_merchant, '$[0]')) IN (SELECT id FROM merchant))
and gsi.id=453



SELECT gsi.id AS spu_id, gsi.`name`, m.id AS merchant_id, m.merchant_name, gsi.adapt_merchant
FROM hth_goods_spu_info gsi
JOIN merchant m ON gsi.merchant_id = m.id
WHERE  gsi.merchant_id = 1762
   OR (JSON_VALID(gsi.adapt_merchant) AND JSON_CONTAINS(gsi.adapt_merchant, CAST(1762 AS JSON)));

你可能感兴趣的:(mysql,json,数据库)