Usando el lenguaje de consulta, puedes combinar múltiples consultas. Los registros obtenidos en cada una de las consultas unidas se incluyen en un único resultado de consulta.
Cada consulta recopila datos de forma independiente, pero las operaciones como ordenar el resultado y cálculo de totales se realizan dentro de los resultados de la consulta unida.
Los campos de resultado de la consulta se nombrarán según se describe en la lista de campos de selección de la primera consulta unida. Los campos de selección de las consultas restantes se agrupan con los campos de resultado según su orden siguiente en la lista de campos de selección. Las consultas unidas deben tener un número similar de campos en la lista de campos de selección.
Si los campos de selección de la consulta unida tienen un tipo diferente, entonces los campos de resultado de la consulta tendrán un tipo compuesto.
La unión de consultas se describe mediante la siguiente regla:
<Unión de consultas> | |||||
| | |||||
UNION [ALL] <Descripción de la consulta> [<Unión de consultas>] |
La unión de consultas comienza con la palabra clave requerida UNION, seguida de la descripción de la consulta unida. Luego puedes unir otra consulta, etc.
De forma predeterminada, las mismas cadenas en el resultado de la consulta formadas por diferentes consultas se reemplazan por una sola cadena. Si necesitas mantener cadenas duplicadas, utiliza la palabra clave ALL.
Ejemplo:
SELECT
Invoice.Contractor,
Invoice.Nomenclature,
SUM (Invoice.Count) AS Receipt,
SUM (0) AS ExpenseFROM
Document.ReceiptofGoods.Content AS InvoiceGROUP BY
Contractor,
NomenclatureUNION ALL
SELECT
Invoice.Contractor,
Invoice.Nomenclature,
SUM (0),
SUM (Invoice.Count)FROM
Document.Invoice.Content AS InvoiceGROUP BY
Contractor,
NomenclatureORDER BY
Contractor,
NomenclatureTOTALS BY
ContractorGRAND TOTALS
Resultado de la consulta:
Contractor
Nomenclature
Receipt
Expense
1 943
151
“Zarya” fábrica de tejidos
443
4
“Zarya” fábrica de tejidos
Pantalones infantiles
3
“Zarya” fábrica de tejidos
Pantalones infantiles
100
“Zarya” fábrica de tejidos
Camisa “Cowboy”
200
“Zarya” fábrica de tejidos
Vaqueros de mujer
1
“Zarya” fábrica de tejidos
Vaqueros de mujer
80
“Zarya” fábrica de tejidos
Suéter infantil
60
“Zarya” fábrica de tejidos
Procesador de alimentos Krups
3
Feria de ropa
42
Feria de ropa
Camisa “Cowboy”
20
Feria de ropa
Vaqueros de mujer
20
Feria de ropa
“Baño Aquarium”
2
Casa de comercio “Budenovski”
53
Casa de comercio “Budenovski”
Pantalones infantiles
10
Casa de comercio “Budenovski”
Camisa “Cowboy”
5
Casa de comercio “Budenovski”
Vaqueros de mujer
12
Casa de comercio “Budenovski”
Suéter infantil
1
Casa de comercio “Budenovski”
Fregadero “Lilia”
8
Casa de comercio “Budenovski”
“Baño Aquarium”
5
Casa de comercio “Budenovski”
“Ultra” mezcladora
10
Casa de comercio “Budenovski”
Procesador de alimentos Krups
2
Pabellón 45 en el mercado mayorista
44
Pabellón 45 en el mercado mayorista
Camisa “Cowboy”
5
Pabellón 45 en el mercado mayorista
Vaqueros de mujer
9
Pabellón 45 en el mercado mayorista
Fregadero “Lilia”
10
Pabellón 45 en el mercado mayorista
“Baño Aquarium”
20
Bavaria China
1 500
8
Bavaria China
Pantalones infantiles
7
Bavaria China
Vaqueros de mujer
1
Bavaria China
Fregadero “Lilia”
270
Bavaria China
“Baño Aquarium”
230
Bavaria China
“Ultra” mezcladora
1 000