0

次のselectステートメントはSQL92に準拠していますか?

SELECT table1.id, table2.id,*  
FROM table1, table2  
WHERE table1.id = table2.id  

SELECT table1.Num, table2.id,*  
FROM table1, table2  
WHERE table1.Num = table2.id  
4

4 に答える 4

2

StingyJackに続き…

SELECT 
    table1.id, 
    table2.id,
    * 
FROM
    table1
    INNER JOIN 
    table2 ON table1.id = table2.id
WHERE
    table1.column = 'bob'

SELECT table1.id, table2.id,* FROM table1, table2 WHERE table1.id = table2.id and table1.column = 'bob'

JOINはどこですか?フィルターはどこ?

JOIN はまた、いくつかの規律と基本的なチェックを強制します: 交差結合または部分的な交差結合をより簡単に回避できます。

于 2009-02-20T20:18:48.007 に答える
1

私は間違っているかもしれませんが、私の理解では、SQL92 の規則は、JOIN ステートメントを使用してテーブルを結合することです (例: FROM table1 INNER JOIN table2)。

于 2009-02-20T20:12:18.660 に答える
1

残念ながら、そうであると私は信じていますが、その結合構文は読み取りと保守がより困難です。

MSSQL では、これら 2 つの結合方法のどちらにもパフォーマンスの違いはないことはわかっていますが、どちらが理解しやすいでしょうか?

SELECT table1.id, table2.id,* 
FROM table1, table2 
WHERE table1.id = table2.id


SELECT 
 table1.id, 
 table2.id,
 * 
FROM table1
   INNER JOIN table2 
     ON table1.id = table2.id
于 2009-02-20T20:12:58.767 に答える