Bases para sql
Estructurado
Ordenamiento en SQL
•Estructura de bloque
SELECT ... FROM...WHERE ...
ORDER BY
•Semántica
–Ordena el resultado ascendentemente según los atributos•Ejemplo: ¿datos de libros de UNILIT,
ordenados por autor y título?
SELECT *
FROM LIBRO
WHERE editorial=‘UNILIT
ORDER BY autor, nombre
Subqueries “unitarios”
•Semántica
–El resultado delsubquery tiene la misma estructura
que los atributos (Estrustura compatible)
–El subquery devuelve un solo valor
–Compara la tupla con resultado del subquery
•Estructura de condición
(SELECT ...FROM... WHERE ...)
•Ejemplo: ¿libros del autor y editor de ‘Hombre eres libre’?
SELECT * FROM LIBRO
WHERE (autor,editorial) =
( SELECT autor,editorial FROM LIBRO
WHERE nombre=‘Hombre eres libre’)Subqueries con IN
•Semántica
–Estructura compatible
–Verifica membresía de la tupla al resultado del
subquery
•Estructura de condición
IN
(SELECT ...FROM ... WHERE ...)
•Ejemplo: ¿autor yeditor de libros que les gustan a Leonid?
SELECT autor,editor FROM LIBRO
WHERE codigo IN
( SELECT codlib FROM LECTOR,Gusta
WHERE nombre=‘Leonid’ AND ci=cilec)
Subqueries con ANY
•Semántica–Estructura compatible
–Existe una tupla del subquery que
satisfaga el comparador con la tupla
•Estructura de condición
ANY
(SELECT...FROM...WHERE...)
•Ejemplo: ¿libros que no son del más alto precio?SELECT nombre FROM LIBRO,Ofrece
WHERE codigo=codlib AND
precio=ALL(SELECT fecha FROM LIBRO)
Subqueries con EXISTS
•Semántica
–El resultado del subquery no es vacío
•Estructura de condición
EXISTS(SELECT...FROM...WHERE...)
•Ejemplo: ¿autores que tienen un solo libro?
SELECT autor FROM LIBRO L
WHERE NOT EXISTS (
SELECT * FROM LIBRO
WHERE autor=L.autor AND
codigoL.codigo )
•Nota: querycorrelativo
Union
•Estructura de query
(SELECT...FROM...WHERE...)
UNION
•Semántica (SELECT...FROM...WHERE...)
–Unión de conjuntos
•Ejemplo: ¿títulos que gustan a Leonid o venden en CLC?...
Regístrate para leer el documento completo.