
No.1ベストアンサー
- 回答日時:
普通に考えたらNVLだと思います。
DECODEは
1.関数の認識
2.値Aの一致性確認
3.置き換え文字の確認B
の3ステップがかかりますが
NVLは
1.関数の確認
2.値Aの一致性確認
だけで済みますから。
NVLよりDECODEがいいのであればNVLは存在意義がなくなります。しかし厳密な速さは違いがあるでしょうか
迷うことは杞憂かと思われます。(ほかのことを悩んだ方が良いでしょう)
あとはコードの可読性ですね。
DECODEよりNVLの方が関数を見ただけで何がしたいのかすぐにわかるので可読性があがります。
よくDECODEを変換表のようにやたらめったら使っているSQLを見ますがあれを見るとプログラマの技術を疑います...
No.2
- 回答日時:
どちらかと言われれば No.1 の方が回答されている通り NVL でしょうが、Oracle 9i で随分と SQL99 標準に対応してきているので、できれば、CASE 文を使われるのがベターだと思います。
CASE 文は不等号も使えるため、DECODE よりもさらにルーチンが複雑であり、遅いと思われますが、処理速度についてはどれも気にしなければならないほどではありません。
内部的には、DECODE、NVL、CASE 以外にも、IN を OR に書き換えたり、OR を UNION ALL に書き換えたりというような複雑な処理が行われることもあります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 法学 全部取得条項付株式の取得と引換えにする株式の発行 申請書について 1 2022/12/21 17:32
- その他(データベース) Accessのクエリで1フィールドの抽出条件設定をNullでなく全角半角含む空白のみの文字列でない文 1 2023/04/24 15:20
- Visual Basic(VBA) VBAで、1つのエクセルで、2つのシートからもう1つのシートに条件のある転記コードを教えてください。 1 2023/03/16 18:07
- C言語・C++・C# C++言語の16進数の表現についておしえてください 1 2022/11/14 17:46
- ドライブ・ストレージ CrystalDiskmarkの測定結果の判定をお願いします 1 2023/02/11 17:42
- システム CSVファイルのマッピング処理の省力化 1 2022/11/24 00:01
- Excel(エクセル) VBAで、シート間の転記するコードを教えてください。 4 2023/03/26 10:43
- Excel(エクセル) capeofdragonと申します Excel2016を使っておりまして 半角又は全角の任意文字列が 2 2022/10/31 13:51
- ビジネスマナー・ビジネス文書 入社手続き書類に関してお伺いしたいのですが、保証人の印鑑登録証明書(実印登録済)で使用したハンコとそ 3 2023/02/21 08:40
- Windows 10 ノートPCの「アップデートナビ」画面について 1 2023/07/04 21:27
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
処理件数を非表示にしたい
-
データ型でFloatとreal の計算...
-
カーソル0件の時にエラーを発生...
-
カーソルを使って、最終行レコ...
-
カーソルがコミットするとクロ...
-
SQL-LOADERの逆のもの
-
NVLとDECODEのスピード差
-
差し込み後、元データを変更し...
-
フィルターかけた後、重複を除...
-
for whichの使い方
-
エクセルで最後の文字だけ置き...
-
EXISTSを使ったDELETE文
-
外部参照してるキーを主キーに...
-
列番号による項目の取得について
-
エクセルの関数について教えて...
-
不連続サブネットとEIGRPについて
-
IDの欠番
-
SELECT 文 GROUP での1件目を...
-
【VB.NET】日付型の列にNULLを...
-
SQLで特定の項目の重複のみを排...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
カーソル0件の時にエラーを発生...
-
処理件数を非表示にしたい
-
カーソルを使って、最終行レコ...
-
データ型でFloatとreal の計算...
-
ストアドプロシージャ_カーソル...
-
クエリの実行時間の目安
-
カーソル宣言をIFで分けられま...
-
NVLとDECODEのスピード差
-
カーソルがコミットするとクロ...
-
テーブルの項目が異なるテーブ...
-
SQL-LOADERの逆のもの
-
(x 行処理されました)を表示さ...
-
Accessで処理経過を表示したい...
-
ACCESSで一括処理する方法
-
PL/SQL で continue ?
-
カーソルオープンの処理について
-
動的SQLの処理件数
-
わり算の結果が整数でも小数点...
-
SQL plus で改行
-
RDBとVSAMの比較
おすすめ情報