PostgreSQL: operador de unión

Los datos expuestos en este blog, son solo de índole informativo. Por favor realiza siempre una copia de seguridad antes de realizar cualquier cambio en tu proyecto.

PostgreSQL: operador de unión

Este tutorial de PostgreSQL explica cómo usar PostgreSQL operador de la UNIÓN Con sintaxis y ejemplos.

describir

El operador UNION de PostgreSQL se usa para combinar los conjuntos de resultados de 2 o más declaraciones SELECT. Elimina filas duplicadas entre varias declaraciones SELECT.

Cada declaración SELECT en el operador UNION debe tener la misma cantidad de campos en un conjunto de resultados con tipos de datos similares.

sintaxis

La sintaxis del operador UNION en PostgreSQL es:

SELECT expression1, expression2, ... expression_n
FROM tables
[WHERE conditions]
UNION
SELECT expression1, expression2, ... expression_n
FROM tables
[WHERE conditions];

parámetro o parámetro

expresión1, expresión2, … expresión_n La columna o el cálculo que desea recuperar. tabla La tabla de la que desea recuperar registros. Debe aparecer al menos una tabla en la cláusula FROM. La condición WHERE es opcional. Para seleccionar las condiciones que debe cumplir un registro.

notas

  • Debe haber el mismo número de expresiones en ambas sentencias SELECT.
  • Dado que, de manera predeterminada, el operador UNION elimina todas las filas duplicadas del conjunto de resultados, siempre que el modificador UNION DISTINCT no tenga efecto en el resultado.
  • Los nombres de columna de la primera instrucción SELECT en el operador UNION se utilizan como nombres de columna del conjunto de resultados.

Ejemplo: devolver un solo campo

El siguiente es un ejemplo del operador UNION de PostgreSQL que devuelve un campo (y ambos campos tienen el mismo tipo de datos) de varias declaraciones SELECT:

SELECT category_id
FROM products
UNION
SELECT category_id
FROM categories;

En este ejemplo del operador UNION de PostgreSQL, si category_id aparece en las tablas de productos y categorías, aparecerá una vez en su conjunto de resultados. El operador UNION de PostgreSQL elimina los duplicados.si lo haces No Para eliminar duplicados, pruebe el operador UNION ALL de PostgreSQL.

Ejemplo: uso de ORDEN POR

El operador UNION de PostgreSQL puede usar la cláusula ORDER BY para ordenar los resultados de la consulta.

Por ejemplo:

SELECT product_id, product_name
FROM products
WHERE product_id >= 24
UNION
SELECT category_id, category_name
FROM categories
WHERE category_name <> 'Hardware'
ORDER BY 2;

En este operador UNION de PostgreSQL, debido a que los nombres de columna difieren entre las dos declaraciones SELECT, es más ventajoso referirse a las columnas en la cláusula ORDER BY por su posición en el conjunto de resultados.En este ejemplo, hemos ordenado los resultados por nombre_producto / nombre_categoría en orden ascendente como ORDER BY 2.

Posición #2 del campo nombre_producto / nombre_categoría en el conjunto de resultados.