Я пытаюсь построить один оператор SQL, который возвращает уникальные, ненулевые значения из нескольких столбцов, расположенных в одной таблице.
SELECT distinct tbl_data.code_1 FROM tbl_data
WHERE tbl_data.code_1 is not null
UNION
SELECT tbl_data.code_2 FROM tbl_data
WHERE tbl_data.code_2 is not null;
Например, tbl_data выглядит следующим образом:
id code_1 code_2
--- -------- ----------
1 AB BC
2 BC
3 DE EF
4 BC
В приведенной выше таблице SQL-запрос должен возвращать все уникальные ненулевые значения из двух столбцов, а именно: AB, BC, DE, EF.
Я новичок в SQL. Мое утверждение выше работает, но есть ли более чистый способ написать этот оператор SQL, поскольку столбцы из одной таблицы?