Usar alias en las consultas SQL con OpenOffice Base
A la hora de escribir consultas directamente con el editor SQL en OpenOffice Base se puede llegar a hacer eterno el proceso, sobre todo si no hemos tenido la precaución de utilizar nombres de tablas y de campos cortos.
Pero existe una solución muy sencilla, práctica y elegante: podemos utilizar alias en lugar de los nombres reales.
Y es tan sencillo como el caso que vamos a describir a continuación.Supongamos una consulta de selección de registros de dos tablas, relacionadas por campos clave, cosa más que habitual en cualquier base de datos:
SELECT "Facturas"."Numero","Clientes"."Nombre","Clientes"."NIF",
"Facturas"."BaseImponible","Clientes"."Telefono"
FROM "Facturas" JOIN "Clientes"
ON "Facturas"."CodigoCliente"="Clientes"."Codigo"
WHERE "Facturas"."BaseImponible">300
Como vemos una consulta típica, en la que de la tabla Facturas y de la tabla Clientes , relacionadas por el campo Codigo de cliente, se extraen los campos Numero de factura, Nombre, NIF y Telefono del cliente y BaseImponible de aquellas facturas cuya BaseImponible es mayor que 300.
Esta misma consulta se puede escribir mucho más fácilmente, con menor riesgo a cometer errores, y ahorrando muchas pulsaciones de teclas, si utilizamos alias.
Es tan sencillo como agregar en la sentencia FROM un identificador o alias para la tabla utilizando la sentencia AS seguida del alias deseado.
En nuestro ejemplo, la consulta podría quedar como vemos a continuación:
SELECT F."Numero",C."Nombre",C."NIF",F."BaseImponible",C."Telefono"
FROM "Facturas" AS F JOIN "Clientes" AS C
ON F."CodigoCliente"=C."Codigo"
WHERE F."BaseImponible">300
Con las sentencias FROM "Facturas" AS F y "Clientes" AS C hemos definido que la tabla "Facturas" (con comillas) la llamaremos F (sin comillas), y la tabla "Clientes" (también con comillas) será llamada C (sin comillas).
Muy sencillo como veis, y ahorra muchas pulsaciones y posibles errores al escribir la consulta, además de facilitar su lectura y comprensión.
1 comentario
muy bien explicado, claro y conciso.