1
テーブルのcolumn1に値 'A'または 'B'またはnullがあるとします。 Column1の値が 'A'の場合は、selectクエリを実行する必要があります。はカラム2です。そうでない場合は、selectクエリを実行する必要があります。カラム3です。2つの異なるorder byステートメントを1つのクエリで使用する
この要件を単一のクエリで確認することができますか。
テーブルのcolumn1に値 'A'または 'B'またはnullがあるとします。 Column1の値が 'A'の場合は、selectクエリを実行する必要があります。はカラム2です。そうでない場合は、selectクエリを実行する必要があります。カラム3です。2つの異なるorder byステートメントを1つのクエリで使用する
この要件を単一のクエリで確認することができますか。
ちょうど推測すると、チェックする必要があります!
select *, decode (column1, 'A', column2, column3) as field_for_order
from your_table
order by field_for_order
このデコードを 'order by'節に直接入れることができます。追加の列は必要ありません。 –
+1、きれいなアプローチ。 – danihp
+1また、ANSI CASE式を使用することもできます: 'A'、次にcolumn2、else3、column3 end' –