Лучший способ сделать это - создать таблицу сопоставления или поиска
Например, рассмотрим следующую таблицу LOOKUP.
COL_A NEW_VALUE
---- -----
A C
B D
Тогда вы можете получить запрос, подобный этому:
SELECT A.*, LOOK.NEW_VALUE
FROM TABLEA AS A
JOIN LOOKUP AS LOOK ON A.COL_A = LOOK.COL_A
Это то, что DimaSUN делает и в своем запросе - но в его случае он динамически создает таблицу в теле запроса.
Также обратите внимание, я используюJOIN (который является внутренним соединением), поэтому будут возвращены только результаты в таблице поиска. Это может отфильтровать результаты. LEFT JOIN вернул бы все данные из A, но некоторые из новых столбцов могут быть нулевыми.