Una consulta de referencias cruzadas es aquella que nos permite visualizar los datos en filas y en columnas, estilo tabla, por ejemplo:
| Producto / Año | 1996 | 1997 |
| Pantalones | 1.250 | 3.000 |
| Camisas | 8.560 | 1.253 |
| Zapatos | 4.369 | 2.563 |
Si tenemos una tabla de productos y otra tabla de pedidos, podemos visualizar en total de productos pedidos por año para un artículo determinado, tal y como se visualiza en la tabla anterior. La sintaxis para este tipo de consulta es la siguiente:
En donde:
| función agregada | Es una función SQL agregada que opera sobre los datos seleccionados. |
| instrucción select | Es una instrucción SELECT. |
| campo pivot | Es el campo o expresión que desea utilizar para crear las cabeceras de la columna en el resultado de la consulta. |
| valor1, valor2 | Son valores fijos utilizados para crear las cabeceras de la columna. |
Para resumir datos utilizando una consulta de referencia cruzada, se seleccionan los valores de los campos o expresiones especificadas como cabeceras de columnas de tal forma que pueden verse los datos en un formato más compacto que con una consulta de selección.
TRANSFORM es opcional pero si se incluye es la primera instrucción de una cadena SQL. Precede a la instrucción SELECT que especifica los campos utilizados como encabezados de fila y una cláusula GROUP BY que especifica el agrupamiento de las filas. Opcionalmente puede incluir otras cláusulas como por ejemplo WHERE, que especifica una selección adicional o un criterio de ordenación.
Los valores devueltos en campo pivot se utilizan como encabezados de columna en el resultado de la consulta. Por ejemplo, al utilizar las cifras de ventas en el mes de la venta como pivot en una consulta de referencia cruzada se crearían 12 columnas. Puede restringir el campo pivot para crear encabezados a partir de los valores fijos (valor1, valor2) listados en la cláusula opcional IN.
También puede incluir valores fijos, para los que no existen datos, para crear columnas adicionales.
Usuarios que han visto este tema también han visto...
- Actualizar un registro SQL
- Consultas de Union Internas
- Consultas de acción en SQL
- Subconsultas SQL
- Tipos de datos en SQL
Información legal | Política de Privacidad | Contacte con nosotros
Otro proyecto de Factoría de Internet. Copyright© 2003-2008 Factoría de Internet S.L.. Todos los derechos reservados.