任何一個可以建議哪一個是在這種情況下,更好地:在SQl查詢中哪個更好的子查詢或JOIN?
1:
SELECT
COLUMN1,
(SELECT
COLUMN2
FROM
TABLE2
WHERE
<some condition>) AS COLUMN2
FROM TABLE 1
2:
SELECT
T1.COLUMN1,
T2.COLUMN2
FROM
TABLE1 T1
INNER JOIN
TABLE2 T2 ON <some condition>
更好的查詢是返回所需結果的那個。我猜想可能會出現兩種查詢可以互換的情況,但並不總是這樣。如果您從給定條件的子查詢中獲取多個行,則子查詢版本將失敗。 –
更好的查詢是在較短的時間內返回所需結果的查詢。 –
更好的查詢是使用更少的數據庫資源返回所需結果並且足夠快以滿足您的應用程序需求的查詢。也就是說,Smruti詢問是否最好用子查詢或聯接來解決給定的問題。這個例子並不是很好(或者甚至是非常必要的),但是問題很明顯。 – ObscureRobot