42
Prof. L. Carámbula Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 S.Q.L. (Lenguaje de Consulta Estructurada) Consultas Avanzadas

SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L.(Lenguaje de Consulta Estructurada)

Consultas Avanzadas

Page 2: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.LS.Q.LProducto CartesianoProducto Cartesiano

( A x B)( A x B)

Page 3: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

��Producto CartesianoProducto Cartesiano

�Por lo menos dos tablas vinculadas en el producto.

�El resultado de la consulta es la combinación de todas las tuplasde las dos tablas, que cumplan con la condición WHEREWHERE.

Page 4: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

�CONSULTA 14.a:�Mostrar el nombre y el apellido de todas las cajeras:

SELECTSELECT nombre, apellido

FROMFROM CAJERAS, PERSONAS

Page 5: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

�CONSULTA 14.a:NombreNombre ApellidoApellido... ...

�Las cajeras son 10, las personas 99

�El resultado de la consulta es:

� 10 * 99 = 990 tuplas

Page 6: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.LS.Q.L..TIPOS de JOIN TIPOS de JOIN

(reuni(reunióón)n)

Page 7: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

�� JoinsJoins ((runionesruniones))

�Por lo menos dos tablas.

�El resultado de la consulta es la

reunión de las dos tablas.

� Se utilizan para obtener datos de

tablas relacionadas entre si.

Page 8: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

�CONSULTA 14.b:�Mostrar el nombre y el apellido de todas las cajeras:

SELECTSELECT nombre, apellido

FROMFROM CAJERAS, PERSONAS

WHEREWHERE CI_CAJ = CICI_CAJ = CI

CONDICIÓN DE JOIN (REUNIÓN)

Page 9: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

�CONSULTA 14.b:NombreNombre ApellidoApellidoPatricia Jentancur

Noelia Tallusche

Lucia Socca

Valentina Mazos

... ...

Page 10: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

�CONSULTA 15:�Mostrar el total de cada producto:

SELECTSELECT cantidad * precio TOTAL

FROMFROM PRODUCTOS, FACTURAN

WHEREWHERE ID_PROD = ID_PRODID_PROD = ID_PROD

CONDICIÓN DE JOIN (UNIÓN)

Page 11: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

�CONSULTA 15:�Mostrar el total de cada producto:

SELECTSELECT cantidad * precio TOTAL

FROMFROM PRODUCTOS, FACTURAN

WHEREWHERE ID_PROD = ID_PRODID_PROD = ID_PROD

El atributo tiene el mismo nombre en las dos tablas, hay que indicar de que tabla es cada uno

Page 12: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

�CONSULTA 15:�Mostrar el total de cada producto:

SELECTSELECT cantidad * precio TOTAL

FROMFROM PRODUCTOS, FACTURAN

WHEREWHERE PRODUCTOSPRODUCTOS..ID_PRODID_PROD ==

FACTURANFACTURAN..ID_PRODID_PROD

Page 13: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

�CONSULTA 15:�Mostrar el total de cada producto:

SELECTSELECT cantidad * precio TOTAL

FROMFROM PRODUCTOS PP,

FACTURAN FF

WHEREWHERE PP..ID_PRODID_PROD =F=F..ID_PRODID_PRODSe puede utilizar un alias para las tablas

Page 14: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

�CONSULTA 15:�Mostrar el total de cada producto:

SELECTSELECT cantidad * precio TOTAL

FROMFROM PRODUCTOS PP,

FACTURAN FF

WHEREWHERE PP..ID_PRODID_PROD =F=F..ID_PRODID_PRODSe puede utilizar un alias para las tablas

Alias de Producto

Page 15: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

�CONSULTA 15:�Mostrar el total de cada producto:

SELECTSELECT cantidad * precio TOTAL

FROMFROM PRODUCTOS PP,

FACTURAN FF

WHEREWHERE PP..ID_PRODID_PROD =F=F..ID_PRODID_PRODSe puede utilizar un alias para las tablas

Alias de Facturan

Page 16: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

��CompatiblesCompatibles

�Dos tablas o consultas A y B son compatibles cuando:

�tienen la misma cantidad de columnas.

�se corresponden los dominios en el mismo orden.

Page 17: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

�Para los siguientes tipos de consultas relacionales, las tablas vinculadas deben ser COMPATIBLES.

��UniUnióónn

��IntersecciInterseccióónn

��DiferenciaDiferencia

Page 18: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

��UniUnióónn

�El número de filas en la consulta

va ser igual a la suma de las filas

de cada tabla o consulta.

�Las tablas deben ser compatibles.

Page 19: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

�CONSULTA 16:�Mostrar el apellido de todas las

personas, conjuntamente con el

quebranto de caja o el número de

cliente

Page 20: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

�CONSULTA 16:SELECTSELECT APELLIDO, NUMERO “No/Quebranto”

FROMFROM PERSONAS, CLIENTES

WHEREWHERE CI = CI_CLICI = CI_CLI

UNION ( UNION ( SELECTSELECT APELLIDO, QUEBRANTO

FROMFROM PERSONAS, CAJERAS

WHEREWHERE CI = CI_CAJ)CI = CI_CAJ)

Page 21: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

��IntersecciInterseccióónn

�El número de filas de la consulta va ser igual a la cantidad de las filas iguales en ambas tablas o consultas.

�Las tablas deben ser compatibles.

Page 22: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

�CONSULTA 17.a:�Mostrar el apellido y el nombre de las

cajeras que han efectuado alguna

venta.

Page 23: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

�CONSULTA 17.a:SELECTSELECT APELLIDO, NOMBREFROMFROM PERSONAS, CAJERASWHEREWHERE CI = CI_CAJ ANDAND CI_CAJ IN (CI_CAJ IN (

SELECTSELECT CI_CAJCI_CAJFROMFROM FACTURAN))

Page 24: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

��DiferenciaDiferencia

�El número de filas de la consulta va ser igual a la cantidad de filas no incluidas en la otra tabla o consulta.

�Las tablas deben ser compatibles.

Page 25: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

�CONSULTA 18.a:�Mostrar el apellido y el nombre de las

cajeras que NONO han efectuado alguna

venta.

Page 26: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

�CONSULTA 18.a:SELECTSELECT APELLIDO, NOMBREFROMFROM PERSONAS, CAJERASWHEREWHERE CI = CI_CAJ ANDAND CI_CAJ NOT IN (CI_CAJ NOT IN (

SELECTSELECT CI_CAJCI_CAJFROMFROM FACTURAN))

Page 27: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

��SubconsultasSubconsultas

��WHEREWHERE columna [NOT] IN[NOT] IN ...

�Intersección [Diferencia]

��WHEREWHERE columna [[ALL|SOME|ANYALL|SOME|ANY]] ...

��WHEREWHERE [NOT] EXISTS[NOT] EXISTS ...

Page 28: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

��SubconsultasSubconsultas��WHEREWHERE columna op_rel [[ALL|SOME|ANYALL|SOME|ANY]]

(subcosulta)

�Se ejecuta la subconsulta y luego la consulta para aquellas tuplas que cumplan con la condición.��WHEREWHERE columna > ALLALL (subconsulta)

�el valor de la columna es mayor que todos los valores de la subconsulta.

Page 29: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

�CONSULTA 19:�Mostrar el nombre y el apellido de las cajeras que tengan un quebranto MAYORMAYORque TODASTODAS las otras cajeras

Page 30: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

�CONSULTA 19:SELECTSELECT APELLIDO, NOMBRE

FROMFROM PERSONAS, CAJERAS

WHEREWHERE CI = CI_CAJ

ANDAND QUEBRANTO >= ALL>= ALL (

SELECTSELECT QUEBRANTO

FROMFROM CAJERAS)

Page 31: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

��SubconsultasSubconsultas

��WHEREWHERE columna op_rel [[ALL|SOME|ANYALL|SOME|ANY]]

(subcosulta)

��WHEREWHERE columna > SOMESOME (subconsulta)

• el valor de la columna es mayor que

algunos (más de dos) de los valores

de la subconsulta.

Page 32: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

�CONSULTA 20:�Mostrar el nombre y el apellido de las cajeras que tengan un quebranto MAYORMAYORque ALGUNASALGUNAS de las otras cajeras

Page 33: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

�CONSULTA 20:SELECTSELECT APELLIDO, NOMBRE

FROMFROM PERSONAS, CAJERAS

WHEREWHERE CI = CI_CAJ

ANDAND QUEBRANTO > SOME > SOME (

SELECTSELECT QUEBRANTO

FROMFROM CAJERAS)

Page 34: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

��SubconsultasSubconsultas

��WHEREWHERE columna op_rel [[ALL|SOME|ANYALL|SOME|ANY]]

(subcosulta)

��WHEREWHERE columna > ANYANY (subconsulta)

• el valor de la columna es mayor que

uno de los valores de la subconsulta.

Page 35: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

�CONSULTA 21:�Mostrar el nombre y el apellido de las cajeras que tengan un quebranto MAYORMAYORque UNAUNA de las otras cajeras

Page 36: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

�CONSULTA 21:SELECTSELECT APELLIDO, NOMBRE

FROMFROM PERSONAS, CAJERAS

WHEREWHERE CI = CI_CAJ

ANDAND QUEBRANTO > ANY > ANY (

SELECTSELECT QUEBRANTO

FROMFROM CAJERAS)

Page 37: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

��SubconsultasSubconsultas

��WHEREWHERE EXISTS EXISTS (subconsulta)

�Cuando existan tuplas resultantes

de la subconsulta.

Page 38: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

�CONSULTA 17.b:�Mostrar el apellido y el nombre de las

cajeras que han efectuado alguna

venta.

Page 39: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

�CONSULTA 17.b:SELECTSELECT APELLIDO, NOMBREFROMFROM PERSONAS, CAJERAS CWHEREWHERE CI = CI_CAJ ANDAND EXISTS (EXISTS (

SELECTSELECT CI_CAJCI_CAJFROMFROM FACTURAN FWHEREWHERE C.CI_CAJ = F.CI_CAJ))

Page 40: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

��SubconsultasSubconsultas

��WHEREWHERE NOT EXISTS NOT EXISTS

(subconsulta)

�Cuando no existan tuplas

resultantes de la subconsulta.

Page 41: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

�CONSULTA 18.b:�Mostrar el apellido y el nombre de las

cajeras que NONO han efectuado alguna

venta.

Page 42: SQL - Avanzadobiblioteca.esucomex.cl/RCA/SQL consultas avanzadas.pdfConsultas Avanzadas. Sistemas de Bases de Datos II - ITS – EMT – CETP - 2010 Prof. L. Carámbula S.Q.L Producto

Prof. L. CarámbulaSistemas de Bases de Datos II - ITS – EMT – CETP - 2010

S.Q.L. - Instrucción SELECT

�CONSULTA 18.b:SELECTSELECT APELLIDO, NOMBREFROMFROM PERSONAS, CAJERAS CWHEREWHERE CI = CI_CAJ ANDAND NOT EXIST (NOT EXIST (

SELECTSELECT CI_CAJCI_CAJFROMFROM FACTURAN FWHEREWHERE C.CI_CAJ = F.CI_CAJ))