Está en la página 1de 6

BASE DE DATOS AVANZADAS

Ingeniera de Sistemas e Informtica

Prctica

2 SQL
Clasulas: Order By - Where

Ordenacin de las filas - ORDER BY -

Para ordenar las filas del resultado de la consulta, tenemos la clusula ORDER BY.

Con esta clusula se altera el orden de visualizacin de las filas de la tabla pero en ningn caso se
modifica el orden de las filas dentro de la tabla. La tabla no se modifica.
Podemos indicar la columna por la que queremos ordenar utilizando su nombre de
columna (nbcolumna) o utilizando su nmero de orden que ocupa en la lista de seleccin
(Ncolumna).

Ejemplo:

SELECT nombre, oficina, contrato

FROM empleados

ORDER BY oficina

Por defecto el orden ser ascendente (ASC) (de menor a mayor si el campo es numrico, por orden
alfabtico si el campo es de tipo texto, de anterior a posterior si el campo es de tipo fecha/hora,
etc.

Ejemplo 1:

SELECT first_name, last_name

FROM employees
BASE DE DATOS AVANZADAS
Ingeniera de Sistemas e Informtica

ORDER BY first_name

Obtiene un listado alfabtico de los empleados por nombre (por defecto es ascendente).

Ejemplo 2:

SELECT first_name, last_name, hire_date

FROM employees

ORDER BY hire_date;

Obtiene un listado de los empleados por orden de antigedad en la empresa (los de ms


antigedad aparecen primero).

Ejemplo 3:

SELECT last_name, first_name, hire_date

FROM employees

ORDER BY hire_date DESC;

Obtiene un listado de los empleados por orden de antigedad en la empresa empezando por los
ms recientemente incorporados.

La clusula WHERE

La clusula WHERE selecciona nicamente las filas que cumplan la condicin de seleccin
especificada.

En la consulta slo aparecern las filas para las cuales la condicin es verdadera (TRUE), los valores
nulos (NULL) no se incluyen por lo tanto en las filas del resultado. La condicin de seleccin puede
ser cualquier condicin vlida o combinacin de condiciones utilizando los operadores NOT (no)
AND (y) y OR ().
BASE DE DATOS AVANZADAS
Ingeniera de Sistemas e Informtica

Los operadores lgicos sirven para combinar condiciones.

Para ver cmo funcionan los operadores lgicos utilizaremos las tablas de verdad de estos
operadores.

Operador AND .

Para que el resultado sea verdadero las dos condiciones deben ser verdaderas.

Operador OR .

El resultado es verdadero si al menos una de las dos condiciones es verdadera.

Operador NOT .

El resultado es invertido.

Ejemplo 1:

SELECT last_name, first_name, salary

FROM employees

WHERE salary<9000;

Ejemplo 2:

SELECT job_title, min_salary, max_salary

FROM jobs

WHERE job_title=President;

Ejemplo 3:

SELECT last_name, first_name, salary

FROM employees
BASE DE DATOS AVANZADAS
Ingeniera de Sistemas e Informtica

WHERE salary>500 AND salary<10000;

Ejemplo 4:

SELECT last_name, first_name, salary

FROM employees

WHERE salary=4800 OR salary=9000;


BASE DE DATOS AVANZADAS
Ingeniera de Sistemas e Informtica

PRACTICA # 1

De los siguientes ejercicios crear las consultas correspondientes. Capturar la pantalla con la
consulta y los resultados, pegarlos en un documento y guardarlo con su nombre, apellido y
Nmero de prctica.

Mostrar los apellidos, nombres y correos electrnicos de los empleados ordenados de forma
ascendente por apellidos.

Mostrar los nombres, apellidos y nmeros telefnicos de los empleados ordenados de forma
descendente por nombres.

Mostrar los nombres de departamentos que tiene la empresa de forma ascendente.

Mostrar las ciudades en donde se ubican los departamentos de la empresa en forma descendente.

Mostrar los cargos que tiene cada empleado de forma ascendente.


BASE DE DATOS AVANZADAS
Ingeniera de Sistemas e Informtica

Se quiere mostrar los apellidos, nombres, fecha de contrato y salarios de los empleados cuyo
salario sean mayores a 17000

Se quiere mostrar los todos los datos del empleado cuyo nombre sea Daniel.

Se quiere mostrar nombre, apellidos y salario del empleado cuyo nombre sea Nancy.

Se quiere mostrar los cargos de los empleados (job_title) cuyo salario mnimo sea igual a 3000.

Se quiere mostrar los cargos de los empleados (job_title) cuyo salario mximo sea menor que
20000, ordenarlos de forma ascendente.

Se quiere mostrar los cargos (alfabticamente) de los empleados cuyo salario mnimo sea entre
3000 y 10000.

Se quiere mostrar nombre, apellidos, fecha de contrato de los empleados cuyos nombres sean
Diana o John, ordenar los datos por fecha de contrato de los ms recientes a los ms antiguos.

Se quiere mostrar los cargos de los empleados, salarios mnimos y mximo de los cargos Finance
Manager o President.