Seleccione valores distintos de varias columnas en la misma tabla

Estoy tratando de construir una sola instrucción SQL que devuelva valores únicos, no nulos de varias columnas, todas ubicadas en la misma tabla.

 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;

Por ejemplo, tbl_data es como sigue:

 id   code_1    code_2
 ---  --------  ----------
 1    AB        BC
 2    BC        
 3    DE        EF
 4              BC

Para la tabla anterior, la consulta SQL debe devolver todos los valores no nulos únicos de las dos columnas, a saber: AB, BC, DE, EF.

Soy bastante nuevo en SQL. Mi declaración anterior funciona, pero ¿hay una forma más limpia de escribir esta declaración SQL, ya que las columnas son de la misma tabla?

Respuestas a la pregunta(3)

Su respuesta a la pregunta