0
我想從Table1返回Table1中的行,其ID爲Table2中存在的1或3次。這個SQL適用於執行一次計數,但是當我多次將它包括在內時,它會失敗。(Oracle jpql)具有多個數值
Table1 Table2
id color id
----- ----- -----
1 bl 1
2 r 4
3 g 1
4 y 2
1
2
SELECT d FROM Table1 d
WHERE d.id IN
( SELECT e.id FROM Table2 e
GROUP BY e.id
HAVING COUNT(e.id) = 1 OR HAVING COUNT(e.id) = 3
)
預期輸出:
id color
--- -----
1 bl
4 y
所有SQL問題需要指明*,其中* RDBMS你使用,因爲它們都具有完全不同的SQL語言實現(通常違反標準,甚至)。 – jpmc26 2015-02-09 23:06:47
你嘗試過省略第二個'HAVING'還是使用'IN'? – 2015-02-09 23:08:33
我省略了第二個HAVING關鍵字,它的工作原理,謝謝。 – CodeIt 2015-02-10 00:16:37