Question :
Is it possible to select different fields inside a SELECT
conditionally?
Pseudocode:
CREATE VIE myview AS SELECT
id,
IF(signal_field == 1)
firstname as first,
lastname as last
ELSE
concat(firstname + lastname) as firstlast
FROM mytable;
Answer :
SELECT
id,(CASE WHEN signal_field =1 THEN firstname END) as first,
(CASE WHEN signal_field =1 THEN lastname END) lastname as last,
(CASE WHEN signal_field!=1 THEN concat(firstname,lastname) END) as firstlast
FROM mytable;