我有两张桌子
表格1:
id|value
1|Tom
1|Lucy
2|Tom
2|Lucy
3|Tom
3|Lucy
3|Bard
表2:
id|value
1|Tom
1|Lucy
2|Tom
2|wrong
3|Tom
3|Lucy
结果应为id,其中两个表中的所有值均匹配:
1
试过这个:
select distinct a.id
from table1 a
join table2 b on a.id=b.id and a.value=b.value
结果是
1
2
3
INTERSECT
浮现在脑海。或者一个FULL OUTER JOIN
。MySQL都不支持。
在MySQL中想到的最简单的方法是:
select id
from table1
group by id
having (id, group_concat(value order by value)) in
(
select id, group_concat(value order by value)
from table2
group by id
);
演示:https : //dbfiddle.uk/?rdbms=mysql_8.0&fiddle=768cc8fb2d01c2b5219a4d56d127d117
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句