dポイントプレゼントキャンペーン実施中!

以下のSQLを実行すると。
SQL実行中に以下のエラーが発生しました。
エラーコード:907 [Oracle][ODBC][Ora]ORA-00907: 右カッコがありません。
というエラーが表示されます。
どこがおかしいでしょうか?

SELECT
Q1.Pコード,
Q1.Qコード,
T1.E名称 A名称,
T2.E名称 B名称,
T3.E名称 C名称,
T4.E名称 D名称,
FROM
(
(
(
(
SELECT
Pコード,
Qコード,
Aコード,
Bコード,
Cコード,
Dコード,
FROM
報告書
WHERE
Pコード = '0001' AND
Qコード = '0001' AND
) Q1 INNER JOIN Eマスタ T1
ON Q1.Aコード = T1.Eコード
) INNER JOIN Eマスタ T2
ON Q1.Bコード = T2.Eコード
) INNER JOIN Eマスタ T3
ON Q1.Cコード = T3.Eコード
) INNER JOIN Eマスタ T4
ON Q1.Dコード = T4.Eコード
ORDER BY
Pコード,
Qコード;

A 回答 (2件)

もう一点だけ。


これも記述ミスかもしれませんが・・・。
ほかは、合ってると思います。
テーブル構造が不明なので、構文しかみれませんが。

SELECT
Q1.Pコード,
Q1.Qコード,
T1.E名称 A名称,
T2.E名称 B名称,
T3.E名称 C名称,
T4.E名称 D名称
FROM
(
(
(
(
SELECT
Pコード,
Qコード,
Aコード,
Bコード,
Cコード,
Dコード 
FROM
報告書
WHERE
Pコード = '0001' AND
Qコード = '0001' AND       ← AND不要
) Q1 INNER JOIN Eマスタ T1
ON Q1.Aコード = T1.Eコード
) INNER JOIN Eマスタ T2
ON Q1.Bコード = T2.Eコード
) INNER JOIN Eマスタ T3
ON Q1.Cコード = T3.Eコード
) INNER JOIN Eマスタ T4
ON Q1.Dコード = T4.Eコード
ORDER BY
Pコード,
Qコード;

この回答への補足

すみません。そこも記述ミスでした。
OracleでテーブルのJOINに制限とかあるのでしょうか?

補足日時:2004/04/01 14:39
    • good
    • 0

間違ってたらすんません。


下記2点がおかしいような気がしました。

SELECT
Q1.Pコード,
Q1.Qコード,
T1.E名称 A名称,
T2.E名称 B名称,
T3.E名称 C名称,
T4.E名称 D名称,        ←カンマ不要
FROM
(
(
(
(
SELECT
Pコード,
Qコード,
Aコード,
Bコード,
Cコード,
Dコード,            ←カンマ不要
FROM
報告書
WHERE
Pコード = '0001' AND
Qコード = '0001' AND
) Q1 INNER JOIN Eマスタ T1
ON Q1.Aコード = T1.Eコード
) INNER JOIN Eマスタ T2
ON Q1.Bコード = T2.Eコード
) INNER JOIN Eマスタ T3
ON Q1.Cコード = T3.Eコード
) INNER JOIN Eマスタ T4
ON Q1.Dコード = T4.Eコード
ORDER BY
Pコード,
Qコード;

この回答への補足

すみません。そこはただの記述ミスでした。
2箇所のカンマ抜きでよろしくお願いします。

補足日時:2004/03/31 20:30
    • good
    • 0

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