[英]Select element from table Where something in Select
我有這個查詢
SELECT
equipe_id
FROM
user
GROUP BY
equipe_id
HAVING
COUNT(*) >= 5
它返回1和3。
我想使用上一個查詢來使用下一個查詢
SELECT
name,
location
FROM
equipe
WHERE
equipe_id IN ??? previous query result (1,3) ???
我希望這是有道理的。 謝謝
SELECT name
, location
FROM equipe
WHERE equipe_id in (SELECT equipe_id FROM user GROUP BY equipe_id HAVING COUNT(*) >= 5);
我們也可以嘗試通過加入子查詢來做到這一點:
SELECT e1.name, e1.location
FROM equipe e1
INNER JOIN
(
SELECT equipe_id
FROM user
GROUP BY equipe_id
HAVING COUNT(*) >= 5
) e2
ON e1.equipe_id = e2.equipe_id;
或者,也可以不使用內部子查詢來完成此操作,如下所示:
SELECT
e.name,
e.location
FROM
equipe AS e
INNER JOIN
user AS u ON u.equipe_id = e.equipe_id
GROUP BY
e.equipe_id, e.name, e.location
HAVING
COUNT(*) >= 5
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.