1

うまくいかないのはなぜですか?

SELECT a.*
FROM dual a
     JOIN (SELECT * FROM dual WHERE 1=1) b
     ON (1=1);

「ORA-00900: 無効な SQL ステートメント」が表示されます。サブクエリ内で WHERE 句を使用する方法はありますか?

編集:バージョン9.2

SELECT *
FROM v$version

Oracle9i Enterprise Edition リリース 9.2.0.8.0 - 64 ビット製品

以下は問題なく実行されます。

SELECT a.*
FROM dual a
     JOIN (SELECT * FROM dual /*WHERE 1=1*/) b
     ON (1=1)
4

4 に答える 4

1

どのバージョンを使用していますか?

まったく同じ SQL がうまく機能します (Oracle Database 10g Express Edition Release 10.2.0.1.0)。

于 2009-10-16T08:40:17.243 に答える