UNION ALL Cláusula 

Usted puede utilizar UNION ALL combinar cualquier número de SELECT consultas extendiendo sus resultados. Ejemplo:

SELECT CounterID, 1 AS table, toInt64(count()) AS c
    FROM test.hits
    GROUP BY CounterID

UNION ALL

SELECT CounterID, 2 AS table, sum(Sign) AS c
    FROM test.visits
    GROUP BY CounterID
    HAVING c > 0

Las columnas de resultados coinciden con su índice (orden dentro SELECT). Si los nombres de columna no coinciden, los nombres del resultado final se toman de la primera consulta.

La fundición de tipo se realiza para uniones. Por ejemplo, si dos consultas que se combinan tienen el mismo campo-Nullable y Nullable tipos de un tipo compatible, el resultado UNION ALL tiene una Nullable campo de tipo.

Consultas que son parte de UNION ALL no se puede encerrar entre corchetes redondos. ORDER BY y LIMIT se aplican a consultas separadas, no al resultado final. Si necesita aplicar una conversión al resultado final, puede colocar todas las consultas con UNION ALL en una subconsulta en el FROM clausula.

Limitacion 

Solo UNION ALL se admite. Regular UNION (UNION DISTINCT) no es compatible. Si necesita UNION DISTINCT usted puede escribir SELECT DISTINCT de una subconsulta que contiene UNION ALL.

Detalles de implementación 

Consultas que son parte de UNION ALL se puede ejecutar simultáneamente, y sus resultados se pueden mezclar juntos.

Clasificación: 4.5 - 2 voto

¿Este contenido fue útil?
★★★★★