Как объединить разные столбцы таблицы в один столбец без объединения содержимого в MySQL?

#mysql

Вопрос:

Таблица 1

policy_number_a policy_number_b policy_number_c
pd0401 нулевой нулевой
нулевой pf0809 tc2001
нулевой нулевой tc3021

и так далее. Я хочу, чтобы стол выглядел так

имя политики номер политики
a pd0401
b pf0809
c tc3021

Выходная таблица может содержать нулевые значения.

Ответ №1:

Вы можете попробовать это:

 select COALESCE(policy_number_a, policy_number_b, policy_number_c) policy_number,  
case when policy_number_a IS NOT NULL THEN 'a' WHEN policy_number_b IS NOT NULL THEN 'b' ELSE 'c' END policy_name
from Table_1;
 

Комментарии:

1. Это лучший ответ! Как раз то, что я искал. Спасибо тебе, Амит!

2. если это был лучший ответ, то почему его не приняли после стольких дней ? Вы нашли лучшее решение ? если да, пожалуйста, поделитесь решением.