0
同じSelect文の正確なフィールドの値をどのように複製できますか?私が持っているものSQLで値getを複製するSelect
:
SELECT
FIELD1,
FIELD2,
CASE WHEN FIELD3 <> FIELD4
THEN CASE WHEN SUBSTRING(FIELD10,1,3) = FIELD5
THEN (FIELD1 * FIELD3) + FIELD4
ELSE (FIELD1/FIELD3) + FIELD4
END
END AS CUSTOM_FIELD1,
-- does the same CASE only to set it to another field.
-- i don't want to make the same case again, I want it to be smarter and use the same value as CUSTOM_FIELD1 without needing to calculate again.
CASE WHEN FIELD3 <> FIELD4
THEN CASE WHEN SUBSTRING(FIELD10,1,3) = FIELD5
THEN (FIELD1 * FIELD3) + FIELD4
ELSE (FIELD1/FIELD3) + FIELD4
END
END AS CUSTOM_FIELD2
私はこのコードは賢くきれいにする方法がある賭け、私は方法がわかりません。
私は実際のSQLでこれを実装しようとすると、それぞれの結果が2回になります。私は非常に小さなSQLであなたのソリューションを試して、それが働いた、私はなぜ私の上で動作しないのか分からない。 – astro11
DISTINCTを内側のSELECTに追加します。それ以外の場合は、実行しているクエリ全体を投稿できますか? – Wil