ORACLE操作 ORACLE機能

[ORACLE] CASE文でORA-00932が発生する場合

投稿日:

CASE文でORA-00932が発生する場合は、
分岐した結果の型が一致していない事が原因です。

サンプル

例えば、以下のSQL文はORA-00932エラーとなります。

実行結果
ORA-00932: データ型が一致しません CHARが予想されましたがNUMBERです。

これは、分岐した結果が 'ABC'(文字列)と123(数値)と型が異なるためです。

以下のように型を合わせればエラーとなりません。

実行結果
ABC

分岐した結果が 'ABC'(文字列)と'123'(文字列)と型が同じためエラーとなりません。

まとめ

  • CASE文の結果の型は、全て同じになるように注意しましょう。
    ※NULLはOKです。

スポンサーリンク

スポンサーリンク

-ORACLE操作, ORACLE機能

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

ORACLE

[SQL*Plus] 画面をクリアする(clear screen)

SQL*Plusコンソール画面をクリアするには、clear screenコマンドを使います。 サンプル 例)SQL*Pl ...
ORACLE

[ORACLE] 列に一意制約を追加する

列に一意制約(ユニーク制約)を追加するには、ALTER TABLE~ADD CONSTRAINT UNIQUE句を使用し ...
ORACLE

[SQL*Plus] よく使うSQLを用意しておいて簡単に呼び出せるようにする

よく使うSQLを用意しておいて簡単に呼び出せるようにする方法です。 手順 1.テンプレートを置いておくフォルダを作成する ...
ORACLE

[データディクショナリ] データベースファイルの情報を取得する

データベースファイルの情報を参照するには、 DBA_DATA_FILESデータディクショナリビューを参照します。 DAT ...
ORACLE

[ORACLE関数] 検索条件に正規表現を使う(REGEXP_LIKE)

検索条件に正規表現を使ったサンプルです。 サンプル 例)user_cdにB、Eが含まれるものを検索する [crayon- ...

スポンサーリンク