• ベストアンサー

PCC-S-02201エラー

こんにちは。 現在Oracle9 Pro*Cで開発をしているのですが、下記のSQLでコンパイルエラーが出てしまいます。エラー内容は 「PCC-S-02201, 記号"+"が見つかりました。」 SQLPlus上では問題なく検索されるのですが、うまくいきません。 何が問題なのでしょうか? EXEC SQL SELECT A_DAY FROM DB1 WHERE B_NUM = ((SELECT B_NUM FROM DB1 WHERE A_DAY = '20040722') + 1); B_NUMはNUMBER型です。

質問者が選んだベストアンサー

  • ベストアンサー
noname#86752
noname#86752
回答No.1

最後にある+1は無理だと思います。 最後の()部分だけ select b_num + 1 from db1 ..... にしたらどうでしょうか。 それと最初の文の where b_num = ((select...))って、OKですか? もしかしたら where b_num in ((select ....))にしないといけないかも知れません。 Pro*Cで開発されているとこことですが、SQLの確認は他でやってからのほうがいいと思います。(もうやっているのかもしれませんが・・・)

noname#7237
質問者

お礼

ありがとうございます。 言われたとおりにしたらできました! つまり、 EXEC SQL SELECT A_DAY FROM DB1 WHERE B_NUM = (SELECT B_NUM +1 FROM DB1 WHERE A_DAY = '20040722'); で通ったのです!! ありがとうございましたーーー!! >それと最初の文の where b_num = ((select...))って、OKですか? は問題ないみたいです。

関連するQ&A