Tablas de ejemplo:

Table_1
 - value_a
 - value_b

Table_2
 - value_c
 - value_d
 - value_e

Intentando hacer esto:

SELECT value_a, value_b UNION ALL SELECT value_c, value_d, value_e

Da como resultado un error con un recuento de columnas que no coincide.

¿Necesito una consulta secundaria para obtener las otras columnas que quiero, o si digo usar una cláusula JOIN reducirá el recuento de mi consulta a solo una?

Estaba mirando esta publicación de stackoverflow.

Las sentencias SELECT utilizadas tienen un número diferente de columnas (¡REDUX!)

1
Jacob David C. Cunningham 16 dic. 2016 a las 02:11

2 respuestas

La mejor respuesta

Simplemente agregue una tercera columna a su primera consulta como

SELECT
 value_a,
 value_b,
 null AS c
FROM yourTable

UNION ALL

....
1
scsimon 15 dic. 2016 a las 23:17

¿No tendría sentido algo como esto?

SELECT value_a, value_b, null UNION ALL SELECT value_c, value_d, value_e

Este resultado será:

value_a, value_b, null
value_c, value_d, value_e
1
iceraj 15 dic. 2016 a las 23:23