我有這樣的查詢:當條件相同時如何將CASE語句一次用於多列?
SELECT (CASE WHEN subject = '' THEN $subject ELSE subject END) main_subject,
(CASE WHEN subject = '' THEN $id ELSE id END) main_id,
(CASE WHEN subject = '' THEN $related ELSE related END) main_related
FROM qanda
WHERE tag = :tag;
正如你看到的,條件是在所有條件下相同的。所以我想知道,我可以提高嗎?我的意思是我可以在所有情況下只寫一次CASE
?
你已經做對了。 –
爲什麼你想在結果中爲表中的每一行添加'subject ='''''重複的行? –
@PaulSpiegel我沒有任何重複的行。 – stack