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

Post on 22-Jan-2016

57 views 0 download

description

S.Q.L. (Lenguaje de Consulta Estructurada). S.Q.L. - Consultas. SQL tiene una instrucción básica para obtener información de una base de datos: la instrucción SELECT (seleccionar). S.Q.L. - Instrucción SELECT. Básicamente la instrucción consta de tres cláusulas: - PowerPoint PPT Presentation

transcript

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

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

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Consultas

SQL tiene una instrucción básica para obtener información de una base de datos:

la instrucción SELECTSELECT (seleccionar).

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

Básicamente la instrucción consta de tres cláusulas:SELECTSELECT <lista de atributos>

FROMFROM <lista de tablas>[ WHEREWHERE <condición> ]

[ GROUP BY <lista de atributos> ] [ HAVING <lista de atributos> ] [ ORDER BY <lista de atributos> ]

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

<lista de atributos><lista de atributos> Es la lista que contiene los nombres de los atributos que se quieren consultar.

Los atributos se van a desplegar en el orden en que aparecen en la lista.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

<lista de atributos><lista de atributos>Para desplegar cada atributo se utiliza una atributo distinta.

En la cabecera de la columna aparecerá el nombre del atributo.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

<lista de atributos><lista de atributos> Ejemplos:

atributo atr1, atr2, atr3,

atr4 * nom_tabla.atributo nom_tabla.*

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

<lista de atributos><lista de atributos>Ejemplos:

expresión: expresión constante operadores

aritméticos atributo

funciónconstantes

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

<lista de tablas><lista de tablas>es la lista que contiene los nombres de las tablas que estan vinculadas en la consulta.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

<condición><condición> es una expresión condicional (booleana).

Las tuplas o filas que cumplan con esta condición serán el resultado de la consulta.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

<condición><condición>Expr1 operadoroperador Expr2 Expr2

atributo Constante Operador Lógico Operador

Relacional

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.LS.Q.LInstrucción SelectInstrucción Select

BásicoBásico

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 1:Obtener los nombres de los jugadores:APELLIDO ‘Delgado’.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 1:SELECTSELECT NOM

FROMFROM JUGADORES

WHEREWHERE APE = ‘Delgado’‘Delgado’

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 1:NOMNOMCesarAgustinJavier

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 2.a:Obtener el peso y altura del jugador de:NOMBRE ‘Frankie’APELLIDO ‘Oviedo’

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 2.a:SELECTSELECT PESO, ALTURA

FROMFROM JUGADORES

WHEREWHERE NOM = ‘Frankie’= ‘Frankie’ ANDAND APE = =

‘Oviedo’‘Oviedo’

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 2.a:PESOPESO ALTURAALTURA94,1 1,99

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 3:Obtener los nombres de todos los jugadores cuya altura sea menor a 1,8 mts.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 3:SELECTSELECT NOM, APE

FROMFROM JUGADORES

WHEREWHERE ALTURA < 1.8< 1.8

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 3:NOMNOM APEAPECesar DelgadoRonald RaldesLorgio AlvarezRoberto Carlos... ...

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

Si se omite la claúsula WHEREWHERE, se despliegan todas las filas de las tablas indicadas en la claúsula FROMFROM.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 4:SELECTSELECT NOM, APE

FROMFROM JUGADORES

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 4:NOMNOM APEAPERuberth MoranCarlos BuenoCesar DelgadoMauricio Pinilla... ...

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

** Indica que se van a seleccionar todos los atributos de una tabla o de las tablas vinculadas en la consulta.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 5:Mostrar todos los datos de las Selecciones.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 5:Mostrar todos los datos de las Selecciones.

SELECTSELECT **FROMFROM SELECCIONES

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 5:IDID NOM NOM 1 Argentina2 Bolivia3 Brasil4 Chile... ...

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

DISTINCTDISTINCT SQL no trata a las TABLAS

como conjuntos, puede haber filas repetidas en una tabla o en el resultado de una consulta.

SQL no elimina las filas repetidas por si solo, sino hay que indicarle que lo haga.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

DISTINCTDISTINCTPara indicar que no tome en cuenta valores de filas repetidas hay que utilizar la instrucción DISTINCTDISTINCT.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

DISTINCTDISTINCT Para indicar que no tome en

cuenta valores de filas repetidas hay que utilizar la instrucción DISTINCTDISTINCT.

SELECTSELECT DISTINCTDISTINCT ATRIBUTOFROMFROM NOMBRE_TABLA

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 6.a: Mostrar todas las alturas de

los jugadores:SELECT SELECT ALTURAFROMFROM JUGADORES En el caso que existan dos o más

jugadores de igual altura, aparecerán igual, en el resultado de la consulta.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 6.a:ALTURAALTURA

1,951,961,961,761,961,96...

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 6.b:Mostrar todas las alturas de los jugadores:

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 6.b:Mostrar todas las alturas de los jugadores:

SELECT SELECT DISTINCTDISTINCT ALTURAFROMFROM JUGADORES

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 6.b:ALTURAALTURA

1,951,961,761,68...

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

Uso de seudónimosUso de seudónimos Se pueden renombrar los nombres de las cabeceras de las atributos resultantes de la consulta.

Se coloca el seudónimo a la derecha de cada atributo en la claúsula SELECTSELECT.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 2.b:Obtener el PESO y ALTURA del jugador de:NOMBRE ‘Frankie’APELLIDO ‘Oviedo’

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 2.b:SELECTSELECT PESO PESOPESO,

ALTURA ALTURAALTURA

FROMFROM JUGADORES

WHEREWHERE NOM = ‘Frankie’ ANDAND APE = ‘Oviedo’

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 2.b:PESOPESO

ALTURAALTURA94,1 1,99

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

Uso de seudónimosUso de seudónimos Generalmente se usa para

renombrar las atributos resultantes del uso de funciones agregadas, como ser:MAX (expr)MAX (expr), máximo.MIN (expr)MIN (expr), mínimo.SUM (expr)SUM (expr), sumatoria.AVG (expr)AVG (expr), promedio.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

Otros operadores atributo [NOT] IN[NOT] IN (lista

valores) atributo [NOT] BETWEEN[NOT] BETWEEN

V1 ANDAND V2 atributo IS [NOT] NULLIS [NOT] NULL atributo [NOT] LIKE[NOT] LIKE ‘Patron’ % , ?

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 7.a:Mostrar los nombres de los jugadores que juegan el la posición de ‘Arquero’ o ‘Defensa’

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 7.a: Mostrar los nombres de los

jugadores que juegan el la posición de ‘Arquero’ o ‘Defensa’ SELECT SELECT NOM, APEFROMFROM JUGADORESWHEREWHERE POSICION IN POSICION IN

(‘Arquero’, ‘Defensa’)(‘Arquero’, ‘Defensa’)

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 7.a:NOMNOM APEAPERuberth MoranJuan Pablo SorinCafuMauricio Pinilla... ...

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 7.b:Mostrar los nombres de los jugadores que su altura este entre 1,8m y 1,9m .

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 7.b:Mostrar los nombres de los jugadores que su altura este entre 1,8m y 1,9m . SELECT SELECT NOM, APEFROMFROM JUGADORESWHEREWHERE ALTURA BETWEEN ALTURA BETWEEN

1.8 AND 1.91.8 AND 1.9

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 7.b:NOMNOM APEAPEAndres D

AlessandroLeonardo FernandezLuis RibeiroLuis Hector Cristaldo... ...

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 7.c:Mostrar los nombres de los jugadores que su apellido comience con los caracteres ‘Ca’

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 7.c: Mostrar los nombres de los

jugadores que su apellido comience con los caracteres ‘Ca’SELECT SELECT NOM, APEFROMFROM JUGADORESWHEREWHERE APE LIKEAPE LIKE

‘‘Ca%’Ca%’

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 7.c:NOMNOM APEAPE

CavalleroJose Alfredo CastilloMiguel Calero

Caniza... ...

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.LS.Q.LFunciones AgregadasFunciones Agregadas

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

Funciones AgregadasFunciones Agregadas Estas cinco (sum, count, min, max, avg) funciones trabajan sobre un grupo de tuplas de igual tipo.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

Funciones AgregadasFunciones Agregadas Se agrupa la información tomando en cuenta: exprexprla(s) tabla(s) en: FROMFROM ... ... la condición en: WHERE...WHERE...

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

Funciones AgregadasFunciones Agregadas Luego se ejecuta la función

sobre los grupos de tuplas o filas.

Por último, se despliega el resultado de la función, para el o los grupos resultantes.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

Funciones AgregadasFunciones Agregadas No se puede utilizar estas funciones conjuntamente con atributos que no pertenezcan o que no esten relacionados con el grupo que se está agregando.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

MAX ([DISTINCT|ALL] MAX ([DISTINCT|ALL] expr)expr) Calcula el máximo valor del

grupo de expresiones expr. DISTINCT

Elimina valores repetidos ALL

Toma en cuenta todos los valores.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 8:Mostrar la máxima altura de todos los jugadores:

SELECT SELECT MAX (MAX ( ALTURA) ) MaximoFROMFROM JUGADORES

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 8:MaximoMaximo

70

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

MIN ([DISTINCT|ALL] MIN ([DISTINCT|ALL] expr)expr) Calcula el valor mínimo del

grupo de expresiones expr. DISTINCT

Elimina valores repetidos ALL

Toma en cuenta todos los valores.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 9:Mostrar el menor peso de todos los jugadores:

SELECT SELECT MINMIN (( PESO)) Menor Peso

FROMFROM JUGADORES

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 9:Menor Menor

PesoPeso 70

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 10:Mostrar la menor altura de todos los jugadores:

SELECT SELECT MINMIN(( ALTURA )) Altura Altura MinimaMinima

FROMFROM JUGADORES

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 10:Altura Altura

MinimaMinima1.50

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

SUM ([DISTINCT|ALL] N)SUM ([DISTINCT|ALL] N) Calcula la sumatoria del grupo

de valores N (expresión numérica). DISTINCT

Elimina valores repetidos ALL

Toma en cuenta todos los valores.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 11.a:Mostrar el total de los SUELDOS de todos los jugadores:

SELECT SELECT SUM (SUM ( SUELDO )) Total Sueldos

FROMFROM JUGADORES

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 11.a:Total Total

SueldosSueldos113894,1

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 11.b: Mostrar el total de los SUELDOS DISTINTOS de todos los jugadores:SELECT SELECT SUM ( SUM ( DISTINCTDISTINCT SUELDO ))

Total Sueldos Distintos

FROMFROM JUGADORES

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 11.b:Total Sueldos Total Sueldos

DistintosDistintos9323.5

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

AVG ([DISTINCT|ALL] N)AVG ([DISTINCT|ALL] N) Calcula el promedio del grupo de valores N (expresión numérica). DISTINCT

Elimina valores repetidos ALL

Toma en cuenta todos los valores.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 12:Mostrar el promedio de todos sueldos de todos los jugadores:

SELECT SELECT AVG (AVG ( SUELDO )) Promedio Sueldos

FROMFROM JUGADORES

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 12:Promedio Promedio

SueldosSueldos769,55

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 13:Mostrar el promedio de los sueldos de los jugadores:

SELECTSELECT AVG AVG ( ( DISTINCTDISTINCT SUELDO))

Promedio Sueldos Distintos

FROMFROM JUGADORES

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 13:Promedio Sueldos Promedio Sueldos

DistintosDistintos767,17

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

COUNT COUNT ({*|[DISTINCT|ALL] expr ({*|[DISTINCT|ALL] expr })}) Calcula el promedio del

conjunto de valores N. *

Count retorna la cantidad de filas de la tabla.

DISTINCT Elimina valores repetidos

ALL Toma en cuenta todos los valores.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 14:Mostrar la cantidad de selecciones:

SELECT SELECT COUNT (COUNT (ID)) CantidadFROMFROM SELECCIONES

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 14:CantidadCantidad

10

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 15: Mostrar la cantidad de sueldos

distintos que se pagan a los jugadores:

SELECT COUNT ( SELECT COUNT ( DISTINCTDISTINCT SUELDO ))Sueldos Distintos

FROMFROM JUGADORES

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 15:Sueldos DistintosSueldos Distintos

10

El sueldo es el mismo para todos los jugadores de la misma selección.

Igual a la cantidad de selecciones.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.LS.Q.LInstrucción SelectInstrucción Select

TIPOS de JOIN (unión)TIPOS de JOIN (unión)

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

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 tuplas de las dos tablas, que cumplan con la condición WHEREWHERE.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 16.a: Mostrar el nombre de todos los

jugadores conjuntamente con la selección a la que pertenecen:

SELECTSELECT S.NOM Seleccion, J.NOM NombreFROMFROM JUGADORES J, SELECCIONES S

WHERE WHERE SEL_ID = S.IDSEL_ID = S.ID

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 16.a:SeleccionSeleccion NombreNombre

ArgentinaCristian

Uruguay AlejandroBolivia LuisBrasil Rivaldo... ...

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 16.b:Mostrar el nombre de todos los jugadores de la selección Uruguay:

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 16.b: Mostrar el nombre de todos los

jugadores de la selección Uruguay:

SELECT SELECT J.NOM NombreFROMFROM JUGADORES J, SELECCIONES S

WHERE WHERE SEL_ID = S.IDSEL_ID = S.IDAND NOM = ‘Uruguay’AND NOM = ‘Uruguay’

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 16.b:NombreNombre

GustavoAlejandroMarceloDaniel...

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CompatiblesCompatibles Dos tablas o consultas T1 y T2 son compatibles cuando: tienen la misma cantidad de atributos.

se corresponden los dominios en el mismo orden.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

Para los siguientes tipos de consultas relacionales, las tablas vinculadas deben ser COMPATIBLES. UniónUnión IntersecciónIntersección DiferenciaDiferencia

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

UniónUniónEl 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.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 17:Mostrar el nombre de todos las personas vinculadas a la selección ‘Uruguay’:JugadoresDirector Técnico.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 17:SELECT SELECT S.NOM Seleccion, J.NOM Nombre

FROMFROM JUGADORES J, SELECCIONES SWHERE WHERE SEL_ID = S.IDSEL_ID = S.ID

AND NOM = ‘Uruguay’AND NOM = ‘Uruguay’

UNION ( UNION ( SELECTSELECT S.NOM, D.NOMFROMFROM DTS D, SELECCIONES SWHEREWHERE D.SEL_ID = D.SEL_ID = S.ID S.ID

AND S.NOM = AND S.NOM = ‘Uruguay’ )‘Uruguay’ )

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 17:Seleccion Seleccion NombreNombre

UruguayAdrian

Uruguay Alejandro... ...Uruguay Jorge... ...

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

IntersecciónIntersección 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.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 18:Mostrar el nombre de los jugadores de la selección Uruguay que han anotado algún gol.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 18:SELECT SELECT J.NOM Nombre, APE Apellido

FROMFROM JUGADORES J, SELECCIONES SWHERE WHERE SEL_ID = S.ID

ANDAND S.NOM = ‘Uruguay’ANDAND J.ID J.ID

IN ( IN ( SELECT SELECT JUG_ID JUG_ID FROMFROM GOLES))

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 18:NombreNombre ApellidoApellido

Nelson Abeijon

Diego ForlanJavier ChevantonCarlos BuenoAdrian Romero

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

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.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 19:Mostrar el nombre de los jugadores de la selección Uruguay que NO han anotado ningún gol.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 19:SELECT SELECT J.NOM Nombre, APE Apellido

FROMFROM JUGADORES J, SELECCIONES SWHERE WHERE SEL_ID = S.ID

ANDAND NOM = ‘Uruguay’ANDAND JUG_ID JUG_ID

NOT IN ( NOT IN ( SELECT SELECT JUG_ID JUG_ID FROMFROM GOLES))

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 19:NombreNombre ApellidoApellido

GustavoMunua

Alejandro LemboMarcelo de SouzaAlvaro Recoba... ...

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

SubconsultasSubconsultas WHEREWHERE atributo [NOT] IN[NOT] IN ...

Intersección [Diferencia]WHERE WHERE atributo

[ALL|SOME|ANY[ALL|SOME|ANY]] ...

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

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

SubconsultasSubconsultas WHERE WHERE atributo op_rel [ALL|SOME|[ALL|SOME|

ANY]ANY](subcosulta)

Se ejecuta la subconsulta y luego la consulta para aquellas tuplas que cumplan con la condición.

WHEREWHERE atributo > ALLALL (subconsulta) el valor de la atributo es mayor

que todos los valores de la subconsulta.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 20: Mostrar el nombre y el apellido

de los Atacante de la selección Uruguay que perciban un sueldo MAYORMAYOR que TODOSTODOS los Atacante de las otras selecciones.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 20:SELECT SELECT J.NOM Nombre, APE Apellido

FROMFROM JUGADORES J, SELECCIONES SWHERE WHERE SEL_ID = S.ID

ANDAND S.NOM = ‘Uruguay’ANDAND POSISICION = ‘Atacante’ANDAND SUELDO > ALL> ALL

( SELECTSELECT SUELDO FROMFROM JUGADORES,

SELECCIONES SWHEREWHERE POSICION = ‘Atacante’

ANDAND SEL_ID = S.ID ANDAND S.NOM != ‘Uruguay’)

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 20:Para que esta consulta tenga resultados se debe modificar alguno de los sueldos de los atacantes de la selección uruguaya.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

SubconsultasSubconsultas WHERE WHERE atributo op_rel [ALL|SOME|[ALL|SOME|

ANY]ANY]

(subcosulta) WHEREWHERE atributo > SOMESOME

(subconsulta) el valor de el atributo es mayor

que algunos (más de dos) de los valores de la subconsulta.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 21: Mostrar el nombre y el apellido

de los Atacante de la selección Uruguay que perciban un sueldo MAYORMAYOR que ALGUNOSALGUNOS de los Atacante de las otras selecciones.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 21:SELECT SELECT S.NOM Nombre, APE Apellido

FROMFROM JUGADORES J, SELECCIONES SWHERE WHERE SEL_ID = S.ID

ANDAND NOM = ‘Uruguay’ANDAND POSICION = ‘Atacante’ANDAND SUELDO > SOME> SOME

( SELECTSELECT SUELDO FROMFROM JUGADORES,

SELECCIONES SWHEREWHERE POSICION = ‘Atacante’

ANDAND SEL_ID = S.ID ANDAND S.NOM != ‘Uruguay’)

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

SubconsultasSubconsultasWHERE WHERE atributo op_rel [ALL|SOME|[ALL|SOME|

ANY]ANY]

(subcosulta) WHEREWHERE atributo > ANYANY

(subconsulta) el valor de la atributo es

mayor que uno de los valores de la subconsulta.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 22: Mostrar el nombre y el apellido

de los Atacante de la selección Uruguay que perciban un sueldo MAYORMAYOR que ALGUNOALGUNO de los Atacante de las otras selecciones.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

CONSULTA 22:SELECT SELECT J.NOM Nombre, APE Apellido

FROMFROM JUGADORES J, SELECCIONES SWHERE WHERE SEL_ID = S.ID

ANDAND NOM = ‘Uruguay’ANDAND SEL_POS = ‘Atacante’ANDAND SUELDO > ANY> ANY

( SELECTSELECT SUELDO FROMFROM JUGADORES J,

SELECCIONES SWHEREWHERE POSICION = ‘Atacante’

ANDAND SEL_ID = S.ID ANDAND S.NOM != ‘Uruguay’)

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

SubconsultasSubconsultasWHEREWHERE EXISTS EXISTS (subconsulta)Cuando existan tuplas resultantes de la subconsulta.

A/S Leonardo Carámbula – Base de Datos I – Instituto Tecnológico Superior

S.Q.L. - Instrucción SELECT

SubconsultasSubconsultasWHEREWHERE NOT EXISTS NOT EXISTS

(subconsulta)Cuando no existan tuplas resultantes de la subconsulta.