SlideShare una empresa de Scribd logo
1 de 11
COMBINACION DE CONSULTAS Y CONSULTAS MULTITABLAS LENGUAJE SQL Cap. 7 y 8
Palabras Reservadas para tablas relacionales •La unión UNION •La diferencia EXCEPT •La intersección INTERSECT •El producto cartesiano CROSS JOIN •La composición interna INNER JOIN •La composición externa LEFT JOIN, RIGHT JOIN Y FULL JOIN
La unión de tablas UNION	 La unión de tablas consiste en coger dos tablas y obtener una tabla con las filas de las dos tablas, en el resultado aparecerán las filas de una tabla y, a continuación, las filas de la otra tabla.  Nota: Para poder realizar la operación, las dos tablas tienen que tener el mismo esquema (mismo número de columnas y tipos compatibles) y la tabla resultante hereda los encabezados de la primera tabla. La sintaxis es la siguiente: {< consulta >|(<  consulta >)}  representa la especificación de la columna que nos devolverá la tabla a combinar.     UNION [ALL] {<  consulta >|(< consulta >)} [{UNION  [ALL] {< consulta >|(< consulta >)}}[ ...n ] ] [ORDER  BY {expression_columna|posicion_columna [ASC|DESC]}              [  ,...n ]]
Ejemplo: SELECT oficina as OFI, ciudad FROM Valencia UNION SELECT oficinas, ciudad FROM Madrid; Resultado: Consideraciones a tomar en cuenta cuando se usa la clausula union ver pagina 349 del libro.
Mas ejemplos: Muestra campos de 3 tablas: SELECT oficina, ciudad  FROM Valencia  UNION  SELECT oficina, ciudad  FROM Madrid  UNION  SELECT oficina, ciudad  FROM Pamplona; Muestre los productoscuyoprecioexceda de $20.00 y se hayavendidomas de 300. SELECT idfab, idproducto FROM  productos WHERE precio > 20  UNION  SELECT fab, producto FROM pedidos WHERE importe > 300;
La Diferencia EXCEPT  La diferencia EXCEPT aparecen en la tabla resultante las filas de la primera consulta que no aparecen en la segunda. Las condiciones son las mismas que las de la unión.     {<consulta>|(<consulta>)}    EXCEPT {<consulta>|(<consulta>)}  [{EXCEPT  {<consulta>|(<consulta>)}}[ ...n ] ] [ORDER  BY {expression_columna|posicion_columna [ASC|DESC]} [  ,...n ]]Por ejemplo tenemos las tablas T1 y T2.
La Diferencia EXCEPT SELECT cod FROM T1 EXCEPT SELECT codigo FROM T2;Devuelve: Ejemplo: Listar los productos que no aparezcan en ningún pedido. SELECT idfab, idproducto FROM  productos EXCEPT SELECT DISTINCT fab, producto FROM pedidos;
INTESERCT La intersección INTERSECT Tiene una sintaxis parecida a las anteriores pero en el resultado de la intersección aparecen las filas que están simultáneamente en las dos consultas.Las condiciones son las mismas que las de la unión.    { <consulta>|(<consulta>)}    INTERSECT {<especificacion_consulta>|(<especificacion_consulta>)}           [{INTERSECT {<consulta>|(<consulta>)}} [ ...n ] ] [ORDER BY {expression_columna|posicion_columna [ASC|DESC]}              [ ,...n ]] Retomando el ejemplo anterior:
INTESERCT SELECT cod FROM T1 INTERSECT SELECT cod FROM T2;  Ejemplo: Obtener todos los productos que valen más de 20 euros y que además se haya vendido en un pedido más de $300 de ese producto. SELECT idfab, idproducto FROM  productos WHERE precio > 20 INTERSECT SELECT fab, producto FROM pedidos WHERE importe > 300;
JOIN Un JOIN de dos tablas es una composicion entre las mismas basada en la coincidencia exacta (u otro tipo de comparacion) de dos columnas, una de cada tabla. El JOIN forma parejas de filas haciendo coincidir los contenidos de las columnas relacionadas. Ejemplo: Queremos visualizar la informacion de las tablas curso y departamento para los que valores de CDEPT en curso coinciden con los DEPT en departamento:
JOIN DE DOS TABLAS SELECT * FROM curso, departamento WHERE cdept=dept; SELECT num_pedido, importe, empresa, lim_credit FROM pedidos,clientes WHERE clie=num_clie;

Más contenido relacionado

La actualidad más candente

Advanced Sql Training
Advanced Sql TrainingAdvanced Sql Training
Advanced Sql Trainingbixxman
 
QUE ES CONSULTA Y TIPOS DE CONSULTA
QUE ES CONSULTA Y TIPOS DE CONSULTAQUE ES CONSULTA Y TIPOS DE CONSULTA
QUE ES CONSULTA Y TIPOS DE CONSULTAcristianjp
 
PASO DEL MODELO E/R AL MODELO RELACIONAL
PASO DEL MODELO E/R AL MODELO RELACIONALPASO DEL MODELO E/R AL MODELO RELACIONAL
PASO DEL MODELO E/R AL MODELO RELACIONAL Laura Correa Restrepo
 
Unidad 6 Lenguaje Sql 3 (Restricciones Ddl Avanzado)
Unidad 6 Lenguaje Sql 3 (Restricciones Ddl Avanzado)Unidad 6 Lenguaje Sql 3 (Restricciones Ddl Avanzado)
Unidad 6 Lenguaje Sql 3 (Restricciones Ddl Avanzado)Sergio Sanchez
 
Normalizacion de base de datos
Normalizacion de base de datosNormalizacion de base de datos
Normalizacion de base de datosSergio Sanchez
 
Unidad5. algebra relacional. yama.may.joseluis.j4
Unidad5. algebra relacional. yama.may.joseluis.j4Unidad5. algebra relacional. yama.may.joseluis.j4
Unidad5. algebra relacional. yama.may.joseluis.j4LuiS YmAY
 
PostgreSQL
PostgreSQLPostgreSQL
PostgreSQLbrobelo
 
Unidad 2. modelo entidad relacion
Unidad 2. modelo entidad relacionUnidad 2. modelo entidad relacion
Unidad 2. modelo entidad relacionLuiS YmAY
 
Pilas como estructura de datos..
Pilas como estructura de datos..Pilas como estructura de datos..
Pilas como estructura de datos..NANO-06
 
2 manipulacion de datos..
2 manipulacion de datos..2 manipulacion de datos..
2 manipulacion de datos..alithu1
 

La actualidad más candente (20)

Advanced Sql Training
Advanced Sql TrainingAdvanced Sql Training
Advanced Sql Training
 
QUE ES CONSULTA Y TIPOS DE CONSULTA
QUE ES CONSULTA Y TIPOS DE CONSULTAQUE ES CONSULTA Y TIPOS DE CONSULTA
QUE ES CONSULTA Y TIPOS DE CONSULTA
 
PASO DEL MODELO E/R AL MODELO RELACIONAL
PASO DEL MODELO E/R AL MODELO RELACIONALPASO DEL MODELO E/R AL MODELO RELACIONAL
PASO DEL MODELO E/R AL MODELO RELACIONAL
 
Consultas base de datos en SQL
Consultas base de datos en SQLConsultas base de datos en SQL
Consultas base de datos en SQL
 
Unidad 6 Lenguaje Sql 3 (Restricciones Ddl Avanzado)
Unidad 6 Lenguaje Sql 3 (Restricciones Ddl Avanzado)Unidad 6 Lenguaje Sql 3 (Restricciones Ddl Avanzado)
Unidad 6 Lenguaje Sql 3 (Restricciones Ddl Avanzado)
 
Joins And Its Types
Joins And Its TypesJoins And Its Types
Joins And Its Types
 
Normalizacion de base de datos
Normalizacion de base de datosNormalizacion de base de datos
Normalizacion de base de datos
 
Unidad5. algebra relacional. yama.may.joseluis.j4
Unidad5. algebra relacional. yama.may.joseluis.j4Unidad5. algebra relacional. yama.may.joseluis.j4
Unidad5. algebra relacional. yama.may.joseluis.j4
 
Consultas en sql básico
Consultas en sql básicoConsultas en sql básico
Consultas en sql básico
 
Procedimientos almacenados en MySQL
Procedimientos almacenados en MySQLProcedimientos almacenados en MySQL
Procedimientos almacenados en MySQL
 
Inner join
Inner joinInner join
Inner join
 
Ejercicios sql
Ejercicios sqlEjercicios sql
Ejercicios sql
 
PostgreSQL
PostgreSQLPostgreSQL
PostgreSQL
 
Cursores explicitos
Cursores explicitosCursores explicitos
Cursores explicitos
 
Unidad 2. modelo entidad relacion
Unidad 2. modelo entidad relacionUnidad 2. modelo entidad relacion
Unidad 2. modelo entidad relacion
 
Comandos ddl
Comandos ddlComandos ddl
Comandos ddl
 
Pilas como estructura de datos..
Pilas como estructura de datos..Pilas como estructura de datos..
Pilas como estructura de datos..
 
Listas
ListasListas
Listas
 
Sql DML
Sql DMLSql DML
Sql DML
 
2 manipulacion de datos..
2 manipulacion de datos..2 manipulacion de datos..
2 manipulacion de datos..
 

Similar a Combinacion de consultas y consultas multitablas

Similar a Combinacion de consultas y consultas multitablas (20)

Combinacion de consultas y consultas multitablas
Combinacion de consultas y consultas multitablasCombinacion de consultas y consultas multitablas
Combinacion de consultas y consultas multitablas
 
Consultas multitabla clase
Consultas multitabla claseConsultas multitabla clase
Consultas multitabla clase
 
Sql1 multitablas
Sql1 multitablasSql1 multitablas
Sql1 multitablas
 
Manipulacion de Bases de Datos
Manipulacion de Bases de DatosManipulacion de Bases de Datos
Manipulacion de Bases de Datos
 
Consultas sql
Consultas sqlConsultas sql
Consultas sql
 
Los inner join- Giovanna Miramontes 3aps Cecyte bc
Los inner join- Giovanna Miramontes 3aps Cecyte bcLos inner join- Giovanna Miramontes 3aps Cecyte bc
Los inner join- Giovanna Miramontes 3aps Cecyte bc
 
Trabajando con sql (parte 1)
Trabajando con sql (parte 1)Trabajando con sql (parte 1)
Trabajando con sql (parte 1)
 
Consultas multitabl1 sql
Consultas multitabl1 sqlConsultas multitabl1 sql
Consultas multitabl1 sql
 
Grupo alfa 3
Grupo alfa 3Grupo alfa 3
Grupo alfa 3
 
Consultas sql
Consultas sqlConsultas sql
Consultas sql
 
Consultas combinadas
Consultas combinadasConsultas combinadas
Consultas combinadas
 
BD_L8_EXP_ROZIC_CAP9_SQL
BD_L8_EXP_ROZIC_CAP9_SQLBD_L8_EXP_ROZIC_CAP9_SQL
BD_L8_EXP_ROZIC_CAP9_SQL
 
SQL
SQLSQL
SQL
 
Algebra relacional
Algebra relacionalAlgebra relacional
Algebra relacional
 
Algebra relacional
Algebra relacionalAlgebra relacional
Algebra relacional
 
Inserción de datos y selección de datos
Inserción de datos y selección de datosInserción de datos y selección de datos
Inserción de datos y selección de datos
 
14 structure query language
14 structure query language14 structure query language
14 structure query language
 
Insercción de datos y selección de datos
Insercción de datos y selección de datosInsercción de datos y selección de datos
Insercción de datos y selección de datos
 
Consultas basicas en sql server
Consultas basicas en sql serverConsultas basicas en sql server
Consultas basicas en sql server
 
Objeto De Aprendizaje
Objeto De AprendizajeObjeto De Aprendizaje
Objeto De Aprendizaje
 

Combinacion de consultas y consultas multitablas

  • 1. COMBINACION DE CONSULTAS Y CONSULTAS MULTITABLAS LENGUAJE SQL Cap. 7 y 8
  • 2. Palabras Reservadas para tablas relacionales •La unión UNION •La diferencia EXCEPT •La intersección INTERSECT •El producto cartesiano CROSS JOIN •La composición interna INNER JOIN •La composición externa LEFT JOIN, RIGHT JOIN Y FULL JOIN
  • 3. La unión de tablas UNION La unión de tablas consiste en coger dos tablas y obtener una tabla con las filas de las dos tablas, en el resultado aparecerán las filas de una tabla y, a continuación, las filas de la otra tabla. Nota: Para poder realizar la operación, las dos tablas tienen que tener el mismo esquema (mismo número de columnas y tipos compatibles) y la tabla resultante hereda los encabezados de la primera tabla. La sintaxis es la siguiente: {< consulta >|(< consulta >)} representa la especificación de la columna que nos devolverá la tabla a combinar. UNION [ALL] {< consulta >|(< consulta >)} [{UNION [ALL] {< consulta >|(< consulta >)}}[ ...n ] ] [ORDER BY {expression_columna|posicion_columna [ASC|DESC]} [ ,...n ]]
  • 4. Ejemplo: SELECT oficina as OFI, ciudad FROM Valencia UNION SELECT oficinas, ciudad FROM Madrid; Resultado: Consideraciones a tomar en cuenta cuando se usa la clausula union ver pagina 349 del libro.
  • 5. Mas ejemplos: Muestra campos de 3 tablas: SELECT oficina, ciudad FROM Valencia UNION SELECT oficina, ciudad FROM Madrid UNION SELECT oficina, ciudad FROM Pamplona; Muestre los productoscuyoprecioexceda de $20.00 y se hayavendidomas de 300. SELECT idfab, idproducto FROM  productos WHERE precio > 20 UNION SELECT fab, producto FROM pedidos WHERE importe > 300;
  • 6. La Diferencia EXCEPT La diferencia EXCEPT aparecen en la tabla resultante las filas de la primera consulta que no aparecen en la segunda. Las condiciones son las mismas que las de la unión. {<consulta>|(<consulta>)} EXCEPT {<consulta>|(<consulta>)} [{EXCEPT {<consulta>|(<consulta>)}}[ ...n ] ] [ORDER BY {expression_columna|posicion_columna [ASC|DESC]} [ ,...n ]]Por ejemplo tenemos las tablas T1 y T2.
  • 7. La Diferencia EXCEPT SELECT cod FROM T1 EXCEPT SELECT codigo FROM T2;Devuelve: Ejemplo: Listar los productos que no aparezcan en ningún pedido. SELECT idfab, idproducto FROM productos EXCEPT SELECT DISTINCT fab, producto FROM pedidos;
  • 8. INTESERCT La intersección INTERSECT Tiene una sintaxis parecida a las anteriores pero en el resultado de la intersección aparecen las filas que están simultáneamente en las dos consultas.Las condiciones son las mismas que las de la unión.    { <consulta>|(<consulta>)}    INTERSECT {<especificacion_consulta>|(<especificacion_consulta>)}           [{INTERSECT {<consulta>|(<consulta>)}} [ ...n ] ] [ORDER BY {expression_columna|posicion_columna [ASC|DESC]}              [ ,...n ]] Retomando el ejemplo anterior:
  • 9. INTESERCT SELECT cod FROM T1 INTERSECT SELECT cod FROM T2; Ejemplo: Obtener todos los productos que valen más de 20 euros y que además se haya vendido en un pedido más de $300 de ese producto. SELECT idfab, idproducto FROM  productos WHERE precio > 20 INTERSECT SELECT fab, producto FROM pedidos WHERE importe > 300;
  • 10. JOIN Un JOIN de dos tablas es una composicion entre las mismas basada en la coincidencia exacta (u otro tipo de comparacion) de dos columnas, una de cada tabla. El JOIN forma parejas de filas haciendo coincidir los contenidos de las columnas relacionadas. Ejemplo: Queremos visualizar la informacion de las tablas curso y departamento para los que valores de CDEPT en curso coinciden con los DEPT en departamento:
  • 11. JOIN DE DOS TABLAS SELECT * FROM curso, departamento WHERE cdept=dept; SELECT num_pedido, importe, empresa, lim_credit FROM pedidos,clientes WHERE clie=num_clie;