![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
select 'aa' ||nvl2(comm,1,0) + nvl2(comm,1,0) || 'aaaa' from emp
→ORA-01722: 数値が無効です。
というエラーが発生します。
nvl2(comm,1,0) + nvl2(comm,1,0)部分に括弧でおおうと、
つまり(nvl2(comm,1,0) + nvl2(comm,1,0))にするときちんと実行結果が出ます。
算術演算子のほうが連結演算子より優先順位が高いと習ったのですが実は逆ということでしょうか。
回答のほどよろしくお願い致します。
No.1ベストアンサー
- 回答日時:
Oracleでは算術演算子も連結演算子もSQL演算子となって優先順位が等しくなってしまう(参考URLの真ん中あたり)のではないでしょうか?
そう考えれば左から実行されて文字列を連結してから+をしようとしてエラーがでているように思えます。
参考URL:http://jibun.atmarkit.co.jp/lskill01/rensai/bron …
No.2
- 回答日時:
単項演算子としての +,- と二項演算子 +,- の違いに関する思い違いではないでしょうか?
※ 単項演算子(+,-)は、最優先の演算子です。
二項演算子(+,-)と連結演算子の優先順位は同じですから、左優先になりますので質問されているSQLではエラーになります。
乗算、除算演算子は連結演算子より上位です。
例 SELECT 'AA' || -10 * -10 || 'BB' FROM DUAL
= AA100BB
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルの演算子の利用について 3 2023/06/19 19:49
- UNIX・Linux Linuxについて質問です。 シェルスクリプト名をdiff.shとして、以下のように2つのテキストフ 1 2023/02/03 20:06
- 物理学 この波動関数の複素共役はなんですか? 2 2022/08/17 00:32
- Access(アクセス) アクセス where句を使用して複数条件抽出をするには 2 2022/08/29 13:24
- 物理学 運動量演算子の交換関係について 5 2022/06/14 17:17
- 防犯カメラ・監視カメラ・小型カメラ 最近の防犯カメラって画質いいですか? Planex commという種類の防犯カメラって結構画質いいで 1 2022/06/26 16:38
- 防犯カメラ・監視カメラ・小型カメラ 最近の防犯カメラって画質いいですか? Planex commという種類の防犯カメラって結構画質いいで 3 2022/06/26 21:44
- 数学 代数学でわからないところがあるので教えていただきたいです。 S={x,y,z}を濃度3の集合とする。 3 2022/11/13 06:05
- システム CPUの問題について 2 2022/07/09 12:04
- Java java 飾子を付けること(public static・・・) ・コンソールへの出力処理はmainメ 2 2022/06/16 19:34
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ORA-01013のエラーについて経験...
-
シェルスクリプトでオラクルの...
-
CASE文のエラーについて
-
「ORA-00907: 右カッコがありま...
-
データベースのカラムの型がCHA...
-
PCC-S-02201エラーの対処を教え...
-
PL/SQLのコンパイルエラーにつ...
-
10gで動いていたSELECT文が11g...
-
インポート時のエラーについて
-
DATABSE LINKについて
-
ORA-01843: 指定した月が無効で...
-
01722 数値が無効です
-
Oracle10gのデータベース作成時...
-
ExcelVBAからOracleストアド実行
-
PL/SQLによるCREATE TABLE後のI...
-
AIX機へのOracleインストール中...
-
AUTOTRACE機能を使いたい。
-
sqlのエラーハンドリングについ...
-
HAVING句でのBETWEEN演算子
-
算術演算子と連結演算子の優先...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ORA-01013のエラーについて経験...
-
CASE文のエラーについて
-
PL/SQLのコンパイルエラーにつ...
-
「ORA-00907: 右カッコがありま...
-
PL/SQL PLS-00103エラーについて
-
はじめまして!
-
SQLLOADER
-
シェルスクリプトでオラクルの...
-
ORA-06502のエラー
-
DATABSE LINKについて
-
ORA-01843: 指定した月が無効で...
-
ACCESSでパススルークエリにパ...
-
PCC-S-02201エラーの対処を教え...
-
ストアドファンクションの実行
-
pro*c で pl/sql に変数を渡す...
-
PL/SQLでPLS-00201のエラー
-
データベースのカラムの型がCHA...
-
PL/SQLによるCREATE TABLE後のI...
-
HAVING句でのBETWEEN演算子
-
無効なSQL文の具体例を教えてく...
おすすめ情報