プロが教える店舗&オフィスのセキュリティ対策術

例えば

SELECT 受注表.受注番号,商品表.商品名 FROM 受注表,商品表 USING(商品コード) WHERE 商品表.単価 >= 500;

において
USING(商品コード)
がある場合とない場合でどう違うのでしょうか?

A 回答 (2件)

テーブルの結合ってわかりますか?


USINGは結合条件です。

USING(商品コード)
でしたら、受注表と商品表のテーブルを、双方の商品コードで結合します。

USINGを使用しない場合は直積となります。
    • good
    • 0
この回答へのお礼

ありがとうございます

お礼日時:2005/05/08 10:16

SQLserverにそれほど詳しくないんですが・・



>SELECT 受注表.受注番号,商品表.商品名
>FROM 受注表,商品表 USING(商品コード)
>WHERE 商品表.単価 >= 500;

というSQLは、SQLserverで動きますか?

SELECT 受注表.受注番号,商品表.商品名
FROM 受注表 INNER JOIN 商品表 USING(商品コード)
WHERE 商品表.単価 >= 500;

というSQLであれば、SQLserver以外の他のRDBでは、構文としてあり得るのですが、
それと勘違いされてませんか?

そうであるなら、理解としては、
FROM A INNER JOIN B USING(KEY_COLUMN)

FROM A INNER JOIN B ON (A.LEY_COLUMN=B.KEY_COLUMN)
と同義です。(記述の簡略が可能であると思えば良いかと)
    • good
    • 2
この回答へのお礼

ありがとうございます
FROM A INNER JOIN B USING(KEY_COLUMN)

FROM A INNER JOIN B ON (A.LEY_COLUMN=B.KEY_COLUMN)

FROM A,B USING(KEY_COLUMN)

FROM A,B ON (A.LEY_COLUMN=B.KEY_COLUMN)
は同じなのですね

お礼日時:2005/05/08 10:20

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

関連するカテゴリからQ&Aを探す