Está en la página 1de 6

UNIVERSIDAD NACIONAL DE SAN CRISTOBAL DE HUAMANGA

FACULTAD DE ING. MINAS, GELOGIA Y CIVIL


ESCUELA DE FORMACIN PROFESIONAL DE INGENIERIA DE SISTEMAS

I.

TEMA:

Realizar un repaso sobre el manejo de consultas avanzadas.

II.

INTRODUCCION A LAS CONSULTAS

LA INSTRUCCIN SELECT
La clusula SELECT lista los datos a recuperar por la sentencia
SELECT. Los elementos o datos a seleccionar pueden ser columnas de
la base de datos o columnas a calcular por SQL cuando efecta la
consulta o tambin el asterisco(*) para recuperar todos los campos de
un fichero o tabla.
SINTAXIS COMPLETA:
SELECT [ALL|DISTINCT] ListaColumnas
FROM origenTabla
[WHERE condicinBsqueda] [Between, like, in]
[GROUP BY [ALL]expresinAgruparPor]
[HAVING condicinBsqueda]
[ORDER BY expresinOrden [ASC / DESC] ]
[ COUNT | AVG| MAX | MIN |SUM (expresin)]
FUNCIONES
Max, Funcin que retorna el Mximo valor
Ejemplo:
Select MAX(salario) as Mejor Pagado
From salarios
Min, selecciona el mnimo
Ejemplo
Select MIN(salario) as Peor Pagado
From salarios
Order By
Select emp_id, salario as Sueldo Pagado
From salarios
Order by salario
Lab. Administracin de Base de Datos
(IS-443)

Prof. Elvira Fernndez

UNIVERSIDAD NACIONAL DE SAN CRISTOBAL DE HUAMANGA


FACULTAD DE ING. MINAS, GELOGIA Y CIVIL
ESCUELA DE FORMACIN PROFESIONAL DE INGENIERIA DE SISTEMAS

OPERADORES DE COMPARACION
=
>, >=
<, <=
<>
!>
!<
BETWEEN...AND...
IN(lista)
LIKE
IS NULL
NOT

Igual a
Mayor a, Mayor o igual a
Menor a, Menor o Igual a
Diferente
no es mayor que
no es menor que
Entre dos valores inclusive
Empareja valores con la lista
Empareja con un patrn
Es un valor nulo?
Verifica que no cumpla la condicin

CADENAS DE CARACTERES (VARCHAR2(N)):


Se delimitan utilizando comillas simples: Hola, Una cadena. Adems de los
operadores de comparacin e igualdad (<, >, =, !=, ...) otras funciones tiles para
trabajar con cadenas son:

cad || cad : concatena dos cadenas.


LENGTH(cad): devuelve la longitud de la cadena.
LOWER(cad): convierte todas las letras de la cadena a minsculas.
UPPER(cad): convierte todas las letras de la cadena a maysculas.

LIKE Y SUS COMODINES ORACLE

LIKE ejecuta bsquedas en base a patrones:


%
coincide con una cadena de cero o mas
caracteres
_
indica un nico carcter
Comodines SQL Server
[ ]
coincide con el carcter nico o el rango o
conjunto, tal como [m-p] o [mnop].
[ ] Carcter comodn no en rango.
Ejemplo:
SELECT nombre FROM empleado
WHERE nombre LIKE J%;
Si se desea usar en la bsqueda los valores % o _ usar con el
identificador \
SELECT nombre FROM empleado
WHERE nombre LIKE J\_a%;
Busca todos lo nombres que comiencen con J_a
Lab. Administracin de Base de Datos
(IS-443)

Prof. Elvira Fernndez

UNIVERSIDAD NACIONAL DE SAN CRISTOBAL DE HUAMANGA


FACULTAD DE ING. MINAS, GELOGIA Y CIVIL
ESCUELA DE FORMACIN PROFESIONAL DE INGENIERIA DE SISTEMAS

BETWEEN
Compara valores entre ambos datos, el mnimo el mayor, ambos son
inclusivos.
SELECT nombre,salario
FROM empleado
WHERE salario BETWEEN 1000 AND 1500;

ROWNUM
Devuelve, en una consulta, el nmero de fila actual. Resulta til para limitar nmero
total de filas y se usa principalmente en la clusula where de las consultas.
AGRUPACIONES
GROUP BY
Group by se utiliza para agrupar filas y sacar datos de ellas, como
por ejemplo:
Select d.departamento_id, sum(s.salario), s.empleado_id
From departamento as d, salarios as s
Group by d.departamento
CONDICIONES DE AGRUPACIONES
HAVING
Having se utiliza de manera parecida que el where, solo que las
condiciones del having se aplican a los grupos:
Select d.departamento_id, sum(s.salario), s.empleado_id
From departamento as d, salarios as s
Group by d.departamento
Having sum(s.salario) > 20000
CONSULTAS MULTITABLAS
a) COMBINCIONES INTERNAS
Las combinaciones internas usan un operador de comparacin
para hacer coincidir las filas de dos tablas segn los valores de
las columnas comunes de cada tabla. Un ejemplo sera recuperar
todas las filas en las que el nmero de identificacin de
estudiante es el mismo en las tablas estudiantes y cursos
INNER JOIN
Una combinacin interna es aquella en la que los valores de
las columnas que se estn combinando se comparan
mediante un operador de comparacin.
Lab. Administracin de Base de Datos
(IS-443)

Prof. Elvira Fernndez

UNIVERSIDAD NACIONAL DE SAN CRISTOBAL DE HUAMANGA


FACULTAD DE ING. MINAS, GELOGIA Y CIVIL
ESCUELA DE FORMACIN PROFESIONAL DE INGENIERIA DE SISTEMAS

Ejemplo 01: Obtener el nombre de los proveedores y los


productos que estos suministran ordenados por el
nombre del proveedor.
SELECT
SUPPLIERS.COMPANYNAME,
PRODUCTS.PRODUCTNAME
FROM SUPPLIERS INNER JOIN PRODUCTS
ON SUPPLIERS.SUPPLIERID = PRODUCTS.SUPPLIERID
ORDER BY 1

EJERCICIOS
Se tiene el siguiente diseo fisco de tablas y relaciones. Responder
las siguientes consultas:
Se tiene el siguiente esquema HR, y contrasea HR

a) Realizar una consulta que muestre el nombre del pas


(COUNTRY_NAME)
y
el
nombre
de
la
regin
(REGION_NAME), a la cual pertenece. Ordene los
resultados por el nombre de regin de forma ascendente
y el nombre de pas de forma descendente. Utilice alias
de tabla

Lab. Administracin de Base de Datos


(IS-443)

Prof. Elvira Fernndez

UNIVERSIDAD NACIONAL DE SAN CRISTOBAL DE HUAMANGA


FACULTAD DE ING. MINAS, GELOGIA Y CIVIL
ESCUELA DE FORMACIN PROFESIONAL DE INGENIERIA DE SISTEMAS

b) Se requiere realizar un reporte para mostrar a los


empleados(nombre , apellidos, total de aos que labora
en la empresa, mes de ingreso ) de los empleados que
solo ingresaron en el mes de mayo- agosto .

c) Realizar un reporte que muestre el apellido LAST_NAME


del empleado en maysculas, el nombre FIRST_NAME en
minsculas, concatenados en una sola columna llamada
nombre_empleado y separados por una coma y un
espacio en blanco. Que muestre el nombre del
departamento de la tabla DEPARTMENT al cual pertenece,
nombre de su puesto de trabajo JOB_TITLE, el salario
anual (calcule el salario anual) con alias salario_anual.
Ordenar la salida por departamento de forma ascendente
y por puesto de forma descendente.

d) se quiere un reporte del promedio de empleados por


departamento

e) Hacer un reporte, para mostrar los empleados cuyo


nombre empieza con la d y termina tambin con la d y
que
pertenezcan
pas
de
Brazil.(buscar
independientemente si fue ingresado en mayscula o
minscula)

Lab. Administracin de Base de Datos


(IS-443)

Prof. Elvira Fernndez

UNIVERSIDAD NACIONAL DE SAN CRISTOBAL DE HUAMANGA


FACULTAD DE ING. MINAS, GELOGIA Y CIVIL
ESCUELA DE FORMACIN PROFESIONAL DE INGENIERIA DE SISTEMAS

f) Mostrar los
empleados

departamentos

que

tienen

g) Se quiere obtener un reporte de los


empleados que tienen el salario ms alto.

ms

de

10

primeros

Nota: Mostrar con los alias respectivos a cada columna

Lab. Administracin de Base de Datos


(IS-443)

Prof. Elvira Fernndez

También podría gustarte