selectステートメントを2回書き出すことなく、CASE WHENテストの値を結果の1つとして使用する方法はありますか(長くて面倒なので)? 例えば:
SELECT id,
CASE WHEN (
(SELECT MAX(value) FROM my_table WHERE other_value = 1) IS NOT NULL
)
THEN (
SELECT (MAX(value) FROM my_table WHERE other_value = 1
)
ELSE 0
END AS max_value
FROM other_table
SELECT ステートメントの最初の実行結果 (テスト用) を THEN 値としても使用できる方法はありますか? 最初の SELECT の後に「AS max_value」を使用しようとしましたが、SQL エラーが発生しました。
更新: おっと、Tom H. が指摘したように、元の質問で「IS NOT NULL」を忘れていました。