表结构如下
需要查询组中出 word 同时包含 ['斗牛', '退现'] 或者 ['扑鱼', '可', '金花'] 或者 ['xxxx','xxx','xx','x'] .......... 的 chat_id
有没有大佬知道可以提供点思路, 或者方法
贴一个未成功的sql, 我这个只能一组条件的情况有效, 如果多组条件就不行了
SELECT DISTINCT(chat_id)
FROM cut_chat
WHERE word in ('六六','44')
GROUP BY chat_id
HAVING COUNT(1) >= 2
这是games表:
这是脚本:
select t.chat_id,t.word_group
from
(
select chat_id,group_concat(distinct word order by word) word_group
from games
group by chat_id
) t
where instr(t.word_group,'斗牛')
and instr(t.word_group,'退现')
;
SELECT chat_id FROM cut_chat WHERE ( word in ('斗牛','退现') OR word in ('66','44'))
group by chat_id
你这个只能保证('斗牛','退现') 中的任意一个, 不能保证两个都出现的