Sub Consultas SQL Server

18
Docente: Ing. Francisco Rodríguez Base de Datos BASE BASE DATOS DATOS Resultados Resultados Requerimientos Requerimientos Intern et UNIVERSIDAD NACIONAL DE TRUJILLO ESCUELA DE ING. INDUSTRIAL

description

Documento donde se explica y ejemplifica la sintaxis SQL para elaborar subconsultas en SQL Server.

Transcript of Sub Consultas SQL Server

Docente:Ing. Francisco Rodrguez Base de DatosBASEBASE DATOS DATOSResultados ResultadosResultados ResultadosRequerimientos RequerimientosRequerimientos RequerimientosInternetUNIVERSIDAD NACIONAL DE TRUJILLOESCUELA DE ING. INDUSTRIALBase de DatosBase de DatosTema 7:El Lenguaje Estndar SLSu!Consultasue es una Su!"onsulta#Una subconsulta es una sentencia SELECT embebida en una clusula de otra sentencia SQL.SELECT...$RO%...&'ERE...( SELECT...$RO%...&'ERE... )Sintaxis del Select anidadoconsulta principalsubconsultaSu!"onsultas* S+nta,+sSELECT lista_CamposFRO nom_tabla!"ERE expresi#n operadoroperador$SELECT lista_camposFRO nom_tabla%T+-os de Su!"onsultasSubconsultas de &ila simpleSubconsultas de &ila multipleReglas de Su!"onsultas'(na subconsulta debe estar encerrada entre par)ntesis*'(na subconsulta debe aparecer al lado derec+o del operador*'Las subconsultas no pueden contener una clausula OrderB,*Subconsultas de &ila simpleComo son procesadas las Subconsultas Anidadas?-* La sentencia SELECT .nidada es e/ecutada primero*0* El Resultado es pasado a la Consulta 1rincipal*1roblema'ostrar apellidos , car2os de los empleados del departamento donde traba/a el sr BoreaSELECT de-t.+d$RO% E/-leado&'ERE a-ell+do01Borea1SELECT a-ell+do2 "argo $RO% E/-leado&'ERE de-t.+d 0Solu"+3n +ntegradaSELECT apellido, cargo FROM EmpleadoWHERE dept_id =(SELECT dept_idFROM EmpleadoWHERE apellido='orea!"Otro -ro!le/aMo#trar el apellido, cargo $ #alario de todo# lo#empleado# %&e ga'e' me'o# del promedioSELECT apellido3 car2o3salario FRO Empleado!"ERE salario 4$SELECT .56$salario%FRO Empleado%Subconsultas de &ila m7ltipleSi (sted escribe una subconsulta 8ue retorne m9s de una &ila , utili:a un solo ;alor de comparaci#n3 entonces cometer9 un error*SELECT apellido3 nombre3 car2oFRO Empleado!"ERE dept_id < $Select dept_idFRO Departamento=+ere nombredptoFinan:as? or re2ion_id