1
我沒有一個這樣的例子,但我只是想知道,如果這樣的事情是在任何情況下有效:你可以在where子句中有多個子查詢嗎?
SELECT somefield
FROM sometable
WHERE something1 IN (SELECT somefield2 FROM sometable2)
AND something2 IN (SELECT somefield3 FROM sometable3)
我沒有一個這樣的例子,但我只是想知道,如果這樣的事情是在任何情況下有效:你可以在where子句中有多個子查詢嗎?
SELECT somefield
FROM sometable
WHERE something1 IN (SELECT somefield2 FROM sometable2)
AND something2 IN (SELECT somefield3 FROM sometable3)
是。您的語法需要修正:
SELECT somefield
FROM sometable
WHERE something1 IN (SELECT somefield2 FROM sometable2)
AND something2 IN (SELECT somefield3 FROM sometable3)
在一個字 - 是的。無論where
條款是否具有in
條件,您都可以在條件中創建儘可能多的條件。
但請記住一件事。雖然可以儘可能多地存在條件/子查詢,但您可能會遇到性能問題。 – Leptonator
@Leptonator視圖不會影響性能,除非它們在大多數RDBMS中無法實現 –
@ThomasG - 剛剛刪除了對視圖的引用。 – Leptonator