Documentos de Académico
Documentos de Profesional
Documentos de Cultura
de Consultas
Introduccin
Consulta de Datos
usando Lenguaje Estructurado
de Consultas
Subconsultas Consultas de
Resumen
Estructura de contenido
Introduccin 1
Mapa conceptual 3
1. Consultar Datos, provenientes de diferentes Tablas 4
1.1. Producto cartesiano. 5
1.2. Combinaciones 7
1.2.1.Combinacin Interna INNER JOIN 7
1.2.2.Combinaciones Externas OUTER JOIN 8
1.2.3.Autocombinaciones SELF JOIN 10
1.2.4.Combinaciones de dos o ms tablas 11
2. Consultas de Resumen 12
2.1. Funciones de agregado 12
2.2. La clusula GROUP BY 14
2.3. La clusula HAVING 15
3. Subconsultas 16
3.1. Operadores 19
3.2. Referencias externas 21
Glosario 23
Bibliografa 24
Crditos 25
2
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Consulta de Datos usando Lenguaje Estructurado de Consultas
MAPA CONCEPTUAL
3
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Consulta de Datos usando Lenguaje Estructurado de Consultas
En este tipo de consultas se vuelven a trabajar los alias, solo que en esta
ocasin el alias es para las tablas. El uso de alias en los nombres de tablas
mejora la legibilidad de las secuencias de comandos, facilita la escritura
de combinaciones complejas y simplifica el mantenimiento de las
consultas.
Sintaxis:
SELECT *
FROM <Nombre_tabla1>AS <alias Tabla1> INNER JOIN
<Nombre_tabla2>AS <alias Tabla2>
ON <aliasTabla1>.<Campo_llaveprimaria> =
<aliasTabla2>.<Campo_llavefornea>
Ejemplo
4
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Consulta de Datos usando Lenguaje Estructurado de Consultas
Consiste en una nueva tabla formada por las filas que resulten de todas
las combinaciones posibles de las filas de la primera tabla con todas las
filas de la segunda tabla. El nmero de filas resultante es el producto de
la multiplicacin de todas las filas de la primera tabla por la segunda. Por
esta razn es imprescindible adicionar un filtro que corresponda con el
vnculo que existe entre las tablas, de otra forma los resultados no seran
coherentes con la informacin.
Sintaxis:
SELECT *
FROM <Nombre_tabla1> , <Nombre_tabla2>
WHERE <Tabla1>.<Campo> = <Tabla2>.<Campo>
5
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Consulta de Datos usando Lenguaje Estructurado de Consultas
A= {1,2} 2 elementos
B= {x,y,z} 3 elementos
A B
1 x
y
2 z
PRODUCTOS TALLAJE
CODIGO NOMBRE COLOR TALLA MEDIDA
328 Camisa Blanco XS 60
329 Buzo Azul S 80
330 Camiseta Rojo M 90
331 Topp Negro L 120
332 Sueter Caf
PRODUCTOS X TALLAJE
6
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Consulta de Datos usando Lenguaje Estructurado de Consultas
1.2. Combinaciones
A B
7
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Consulta de Datos usando Lenguaje Estructurado de Consultas
Sintaxis:
SELECT *
FROM <Nombre_tabla1>AS <alias Tabla1> INNER JOIN
<Nombre_tabla2>AS <alias Tabla2>
ON <aliasTabla1>.<Campo_llaveprimaria> =
<aliasTabla2>.<Campo_llavefornea>
Sintaxis:
SELECT *
FROM <Nombre_tabla1>AS <alias Tabla1> RIGHT/LEFT JOIN
<Nombre_tabla2> AS <alias Tabla2>
ON <aliasTabla1>.<Campo_llaveprimaria> =
<aliasTabla2>.<Campo_llavefornea>
8
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Consulta de Datos usando Lenguaje Estructurado de Consultas
A B A B
Clientes Ventas
ID_ Cliente Nombre ID_ Cliente ID_ Producto Cantidad
234 Ramn Pea 234 23B78 3
456 Cesar Garca 576 23J45 12
576 Carol Valencia 576 45A45 5
632 Andres Muoz 234 34B34 22
456 67C32 8
9
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Consulta de Datos usando Lenguaje Estructurado de Consultas
SELECT *
FROM <Nombre_tabla1>AS <alias 1> INNER JOIN
<Nombre_tabla1>AS <alias 2>
ON <alias1>.<Campo> = <alias2>.<Campo>
Empleados A Empleados B
ID_Empl Nombre ID_Jefe ID_Empl Nombre ID_Jefe
1 Juan Prez 1 Juan Prez
2 Lina Luna 1 2 Lina Luna 1
3 Pedro Blanco 2 3 Pedro Blanco 2
4 Harry Arcila 2 4 Harry Arcila 2
5 Mariana Lpez 1 5 Mariana Lpez 1
10
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Consulta de Datos usando Lenguaje Estructurado de Consultas
Sintaxis:
SELECT *
FROM <Nombre_tabla1>AS <alias 1> INNER JOIN
<Nombre_tabla1>AS <alias 2>
ON <alias1>.<Campo> = <alias2>.<Campo> INNER JOIN
<Nombre_tabla3>AS <alias 3> ON <alias1>.<Campo> =
<alias2>.<Campo>
Productos Ventas
ID_Productos Nombre ID_Cliente ID_Producto Cantidad
23B78 Cuaderno Argollado 234 23B78 3
23J45 Carpeta Plastificada 576 23J45 12
45A45 Block Papel Carta 576 45A45 5
34B34 Libreta Apuntes mini 234 34B34 22
67C32 Micropunta negro 456 67C32 8
11
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Consulta de Datos usando Lenguaje Estructurado de Consultas
2. Consultas de Resumen
Ejemplo:
12
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Consulta de Datos usando Lenguaje Estructurado de Consultas
Ejemplo:
SELECT MIN (precio)
FROM Productos /* Obtiene el menor precio de los productos */
Ejemplo:
SELECT MAX (precio)
FROM Productos /* Obtiene el precio ms alto de los productos*/
Ejemplo:
SELECT AVG (Precio)
FROM Ventas /* Calcula el precio promedio de venta de los productos */
Ejemplo:
SELECT COUNT (email)
FROM Clientes /* Obtiene el nmero de clientes que registraron un email
*/
Ejemplo:
SELECT COUNT (*)
FROM Ventas /* Obtiene el nmero de ventas que se han hecho */
.22
Noo.
A N
ENNA
SSE
13
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Consulta de Datos usando Lenguaje Estructurado de Consultas
Ejemplo:
14
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Consulta de Datos usando Lenguaje Estructurado de Consultas
Sintaxis:
Ejemplo
15
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Consulta de Datos usando Lenguaje Estructurado de Consultas
3. Subconsultas
El resultado de la subconsulta
debe retornar una nica fila de
resultados
Crear una consulta que obtenga la lista de precios de cada producto junto
con el precio promedio de los mismos.
16
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Consulta de Datos usando Lenguaje Estructurado de Consultas
PRODUCTOS
CODIGO NOMBRE COLOR PRECIO
328 Camisa Blanco 35000
329 Buzo Azul 42000
330 Camiseta Rojo 38000
331 Top Negro 20000
332 Sueter Caf 40000
17
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Consulta de Datos usando Lenguaje Estructurado de Consultas
18
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Consulta de Datos usando Lenguaje Estructurado de Consultas
Note que los operadores utilizados para las subconsultas dependen del
nmero de filas y columnas que retornen stas.
SELCT Nombre, Precio
FROM Productos
SELCT Nombre, Precio
WHERE ID_Prodcuto IN ( SELECT ID_prodcuto
FROM Productos FROM Ventas
WHERE ID_Prodcuto IN ( SELECT ID_prodcuto
WHERE ID_Cliente = ( SELECT ID_Cliente
FROM Ventas FROM Clientes
WHERE ID_Cliente = ( SELECT ID_Cliente
WHERE Nombre =
FROM Clientes
)
) WHERE Nombre = Carol
)
)
3.1. Operadores
expresin = subconsulta
<>
<
<=
>
>=
19
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Consulta de Datos usando Lenguaje Estructurado de Consultas
20
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Consulta de Datos usando Lenguaje Estructurado de Consultas
21
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Consulta de Datos usando Lenguaje Estructurado de Consultas
22
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Consulta de Datos usando Lenguaje Estructurado de Consultas
GLOSARIO
NOT NULL: Tipo de identificador utilizado para impide que un campo sea
vaco.
10
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
23
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Consulta de Datos usando Lenguaje Estructurado de Consultas
BIBLIOGRAFA
924
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Consulta de Datos usando Lenguaje Estructurado de Consultas
CREDITOS
Control de documento
Construccin Objeto de Aprendizaje
Consulta de Datos usando Lenguaje Estructurado de Consultas
25
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje