0

我有 2 个表——主表和详细表

表 A 是主表,包含唯一行

ID Name
1  Abc
...
7  Def
...
19 Xyz

表 B 是详细信息,每个主行包含多行

Ref ID  Desc
1   10  abcdef
1   15  ghijk
1   20  lmnop
...
7   05  qrstu
7   10  vwxyz
7   15  ygfdt
7   20  kjqts
...
19  05  htyge
19  15  gqwes

查询结果——我只希望选择具有包含“10”和“15”相关详细行的详细行的主行

所以只会选择第 1 行和第 7 行。

感谢您的帮助。

这是我的查询的外壳:

$query_string = '
  SELECT a.ID, Name
  FROM table_a AS a
  LEFT JOIN table_b AS b ON b.ref = a.ID
  WHERE b.ID = "10" AND b.ID = "15"
';
4

1 回答 1

1
SELECT a.ID, Name
FROM table_a AS a
LEFT JOIN table_b AS b ON b.ref = a.ID
WHERE b.ID IN (10,15)
group by a.ID
having count(distinct b.id) = 2
于 2013-04-03T17:57:47.370 回答