第一:
id_look id_first name
1 1 Jhon
2 2 Mark
3 3 Mike
Run Code Online (Sandbox Code Playgroud)
第二
id id_first surnames
1 2 AAA
2 2 BBB
3 2 CCC
4 1 DDD
5 1 AAA
6 1 BBB
7 3 BBB
Run Code Online (Sandbox Code Playgroud)
如果姓氏是AND,我想得到所有id_look(相同id_first)AAABBB
所以结果应该是:
id_look
1
2
Run Code Online (Sandbox Code Playgroud)
因为只有那个id_look包含AAAAND BBB的同时.
SELECT id_look
FROM `first` f
JOIN `second` s
ON s.id_first = f.id_first
WHERE surnames IN ( 'AAA', 'BBB' )
GROUP BY id_look
HAVING COUNT(DISTINCT surnames) = 2;
Run Code Online (Sandbox Code Playgroud)