I have a table like this
ID | Type | Val0 | Val1 1 | 0 | A | NULL 2 | 1 | NULL | B
I need to select Val0 when the type
Val0
For low values of N, you can do it ad-hoc using the CASE statement, like CASE Type WHEN 0 THEN Val0 WHEN 1 THEN Val1 END. If your N is bigger, you should probably normalize your database (i.e. put ID => ValN mappings in a different table).
CASE Type WHEN 0 THEN Val0 WHEN 1 THEN Val1 END