El resultado de una consulta SQL, es una relación. Considérese «Obtener los nombre de todas las sucursales en la relación préstamo»:
select nombre-sucursal from préstamo
SQL permite usar las palabras claves “distinct” o “all” para especificar explícitamente se eliminen o no los duplicados:
select distinct nombre-sucursal from préstamo
O también
select all nombre-sucursal from préstamo
El símbolo asterisco «*» se puede usar para denotar «todos los atributos».
select préstamo.* from préstamo
La cláusula select puede contener también expresiones aritméticas que contengan los operadores, +, –, * y / operando sobre constantes o atributos de la tuplas.
select nombre-sucursal, número-préstamo, importe * 100 from préstamo
devolverá una relación que es igual que la relación préstamo, salvo que el atributo importe está multiplicado por 100.
SQL proporciona un alias para renombrar tanto relaciones como atributos. Para ello utiliza la cláusula as, que tiene la forma siguiente:
nombre-antiguo as nombre-nuevo
la cláusula as puede aparecer tanto en select como en from. Considérese de nuevo la consulta anterior:
select distinct nombre-cliente, prestatario.número-préstamo, importe from prestatario, préstamo where prestatario.número-préstamo = préstamo.número-préstamo
El resultado de esta consulta es una relación con los atributos siguientes: nombre-cliente, número-préstamo, importe.
Por ejemplo, si se quisiera renombrar el atributo
“número-préstamo”
Asignándole el nuevo nombre de “id-préstamo”, se podría reescribir la consulta anterior del siguiente modo
select nombre-cliente, prestatario.número-préstamo as id-prestatario, importe from prestatario, préstamo where prestatario.número-préstamo = préstamo.número-préstamo
La cláusula as es útil en la definición del concepto de variables tupla. Se debe asociar con una relación concreta, definiendose en la cláusula from mediante el uso de la cláusula as. Ejemplo: «Obtener los nombres y números de préstamo de todos los clientes que tienen un préstamo en el banco»
select nombre-cliente, T.número-préstamo, S.importe from prestatario as T, préstamo as S where T.número-préstamo = S.número-préstamo
Son de gran utilidad para comparar dos tuplas de la misma relación, recordando que, en los casos de este tipo, se puede usar la operación renombramiento del álgebra relacional. Ejemplo: «Obtener los nombres de todas las sucursales que poseen un activo mayor que al menos una sucursal situada en Barcelona»,
select distinct T.nombre-sucursal from sucursal as T, sucursal as S where T.activo > S.activo and S.ciudad-sucursal = ‘Barcelona’