Académique Documents
Professionnel Documents
Culture Documents
2013
Al estudiar las operaciones del lgebra relacional, se entienden los tipos de solicitudes que se le puede pedir a una Base de Datos Relacional. El lgebra es un lenguaje de consulta de alto nivel porque sus operaciones se aplican a relaciones completas. Las consultas se escriben en forma de secuencias de operaciones que, al ejecutarse, producen un resultado, es decir, el usuario debe indicar como -en que orden- se deben ejecutar las mismas. A este tipo de lenguaje se los denomina Lenguaje Imperativo. En la actualidad no existen SGBD relacional que se basen directamente en el lgebra relacional. Los SGBD comerciales cuentan con una interfaz de Lenguaje Declarativo (no dicen cmo hacer una cosa, sino, qu cosa hacer) de alto nivel. De modo que el usuario deja que el SGBD se encargue de la optimizacin y de la ejecucin de las operaciones. 2013
2013
2003 2006
SQL:2003 SQL:2006
Estructura SELECT-FROM-WHERE
La forma bsica de la sentencia SELECT, en ocasiones denominada correspondencia o bloque select-from-where, consta de las tres clusulas SELECT, FROM y WHERE y tiene la siguiente forma:
2013
DEPARTAMENTO NombreD
NmeroD
NSS-Jefe
NmeroD
Fecha-Inic-jefe
LocalizacinD NumD
LOCALIZACIN-DEPT PROYECTO
NombreP NmeroP
LocalizacinP
TRABAJA-EN NSSE
NP
Horas
DEPENDIENTE
NSSE NombreDependiente Sexo Fecha -Nto Parentesco
Estructura SELECT-FROM-WHERE
CONSULTA 0 Mostrar fecha de nacimiento y direccin del empleado John Smith C0: SELECT FROM WHERE FECHA_NAC, DIRECCION EMPLEADO NOMBRE = `John AND APELLIDO = `Smith;
2013
Estructura SELECT-FROM-WHERE
CONSULTA1 Mostrar el nombre, apellido y direccin de los empleados que trabajan en el departamento de Investigacin
C1:
NOMBRE, APELLIDO, DIRECCION EMPLEADO, DEPARTAMENTO NOMBRED = `Investigacin AND NUMEROD = ND;
2013
Estructura SELECT-FROM-WHERE
CONSULTA2 De cada proyecto ubicado en Stafford, haga una lista con el nmero de proyecto, nmero de departamento controlador y apellido, direccin y fecha de nacimiento del jefe de departamento.
C2: SELECT FROM WHERE
NUMEROP, NUMD, APELLIDO, DIRECCION, FECHA_NAC
PROYECTO, DEPARTAMENTO, EMPLEADO NUMD = NUMEROD AND NSS_JEFE = NSS AND LOCALIZACION = `Stafford;
2013
C3:
2013
C4:
2013
C5:
E.NOMBRE, E.NOM, DIRECCION EMPLEADO E, DEPARTAMENTO D D.NOM = `Investigacin AND D.NUMEROD = E.NUMEROD;
2013
C6:
SELECT FROM
NSS EMPLEADO;
C7:
SELECT FROM
2013
C9:
C11:
SELECT DISTINCT SALARIO FROM EMPLEADO; Recupera el valor de todos los salarios distintos 2013
2013
Prepare una lista con todos los proyectos en los que participa un empleado de apellido Smith, sea como empleado o como jefe del departamento que controla el proyecto.
2013
C15:
SELECT NOMBRE, APELLIDO, 1.1 * SALARIO FROM EMPLEADO, TRABAJA_EN, PROYECTO WHERE NSS = NSSE AND NP = NUMEROP AND NOMBREP = Producto X;
Tambin +, 2013
C16:
SELECT * FROM EMPLEADO WHERE (SALARIO BETWEEN 7000 AND 10000) AND ND = 5;
2013
o
ORDER BY
NOMBRED DESC, APELLIDO ASC, NOMBRE ASC; 2013
Recuperar los nmeros de proyectos en que un Smith participa como jefe o que participa como empleado
CONSULTA18
C18:
Recuperar los NSS de los empleados que trabajan para la misma combinacin (proyecto, horas) en algn proyecto que trabaja el empleado con NSS= 123456789
C19: SELECT DISTINCT NSSE FROM TRABAJA_EN WHERE (NP, HORAS) IN ( SELECT NP, HORAS FROM TRABAJA_EN WHERE NSS = 123456789);
2013
2013
2013
2013
2013
2013
2013
2013
C30:
SUM (SALARIO), MAX (SALARIO), MIN (SALARIO), AVG (SALARIO) EMPLEADO, DEPARTAMENTO ND = NUMEROD AND NOMBRED = Investigacin ;
2013
C32:
2013
Recuperar el ND, la cantidad de empleados que trabajen en l y el promedio de salario por departamento.
C35:
2013
C36:
SELECT NUMEROP, NOMBREP, COUNT (*) FROM PROYECTO, TRABAJA_EN WHERE NUMEROP = NP GROUP BY NUMEROP, NOMBREP HAVING COUNT(*) > 2;
2013
SELECT <atributos y lista de funciones> FROM <lista de tablas> [WHERE <condicin>] [GROUP BY <atributo(s) de agrupacin>] [HAVING <condicin de agrupacin>] [ORDER BY <lista de atributos>]
2013