0% encontró este documento útil (0 votos)
5 vistas26 páginas

Introducción a SQL y DML en Oracle

Cargado por

Aaron Zeballo
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
5 vistas26 páginas

Introducción a SQL y DML en Oracle

Cargado por

Aaron Zeballo
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Day 2

Introducción a SQL

ORACLE SQL & PL/SQL

CEIT UNAHUR
PG Gabriela Velázquez
Contenido
❖Introducción a SQL
▪Definición SQL
▪DML
▪Sentencia SELECT
✔Estructura
✔Cláusula SELECT
✔Cláusula WHERE
✔Operadores de Comparación
✔Cláusula ORDER BY
SQL
• SQL ‘Structured Query Language’, es un lenguaje diseñado
específicamente para la comunicación con la base de
datos.
• Facilita la obtención y manipulación de información que se
almacena en una o más tablas de una base de datos.
SQL - DML
▪ DML ‘Data Manipulation Language’ es un sublenguaje que contiene sentencias para la
administración de los datos:

✔ SELECT: para realizar consultas


✔ INSERT: para insertar registros
✔ DELETE: para borrar registros
✔ UPDATE: para modificar registros
Sentencia SELECT
▪ SELECT es la sentencia que permite la obtención de los valores
almacenados en las tablas o vistas de la base de datos.

▪ El motor busca las filas de las tablas incluidas en su clausula FROM y


que además cumplan con las condiciones de la cláusula WHERE.
Estructura SELECT
SELECT [ALL | DISTINCT] < * , lista columnas, valores constantes, funciones, subconsultas, etc>
FROM <lista tablas, vistas, subconsultas>
WHERE <predicado logico> [AND, OR, NOT]<predicado logico>
GROUP BY <lista columnas>
HAVING <predicado logico>
[AND, OR, NOT] <predicado logico>
ORDER BY <lista columnas, N°orden, alias columnas> [DESC, ASC];
Clausula SELECT
▪ Las clausulas obligatorias en Oracle son SELECT y
FROM.

SELECT *
Operador ‘*’ recupera
FROM empleados; todas las columnas de
las tablas
Valor literal que se
Repite por cada fila
SELECT ‘El nombre es:’,

nombre,

salario as salarioAnterior,
Función de fila Alias de
columnas
simple, operador
multiplicación
salario*1,20 as aumento
FROM empleados;
SELECT + DISTINCT
SELECT d_departamento SELECT
FROM get_departamento;
DISTINCT d_departamento

FROM get_departamento;
SELECT + DISTINCT *
SELECT * SELECT DISTINCT *
FROM (SELECT practica,
prestacion, FROM (SELECT practica,
practica, prestacion,
modulo
FROM practica practica,
WHERE file = 604)
ORDER BY 1, 3; modulo

FROM practica

WHERE file = 604)

ORDER BY 1, 3;
SELECT + DISTINCT *
Clausula WHERE
▪ En la cláusula WHERE se definen las condiciones de filtro que
permiten elegir las filas a mostrar.

▪ Una condición está compuesta por una columna, una condición y un


valor constante, que a su vez, puede ser otra columna, una variable o
una subconsulta.
Clausula WHERE
WHERE salario > 1000;

WHERE apellido = ‘LOPEZ’;

WHERE fecha_contrato < ‘16/08/2017’;

WHERE NOT apellido = ‘LOPEZ’;

WHERE apellido = ‘LOPEZ’ AND salario > 1000;

WHERE fecha_contrato > ‘16/08/2017’ OR salario > 1000;


Operadores de Comparación
Operador Descripción
= Igual
< Menor que
> Mayor que
<> Distinto que
BETWEEN Limite inferior AND limite superior está dentro de
un rango inclusivo.
NOT Limite inferior AND limite superior está fuera de
BETWEEN un rango inclusivo.
LIKE Cumple con un patrón dado.
NOT LIKE No cumple con un patrón dado.
EXISTS Verifica la existencia en una subconsulta.
NOT EXISTS Verifica la no existencia en una subconsulta.
Operador Descripción
=ANY / ALL Compara con todos los valores de una lista.
<ALL Menor a todos los valores de una lista o
subconsulta.
>ALL Mayor a todos los valores de una lista o
subconsulta.
<=ALL Detecta al menor de todos los valores de una
lista o subconsulta.
>=ALL Detecta al mayor de todos los valores de una
lista o subconsulta.
<ANY Es menor que algunos de los valores de una lista
o subconsulta.
>ANY Es mayor que algunos de los valores de una lista
o subconsulta.
IN Es igual que al menos uno de los valores de una
lista o subconsulta.
NOT IN No es igual a ninguno de los valores de una lista
o subconsulta.
OPERADORES DE COMPARACIÓN -
LIKE

Operadores de Comparación LIKE


SELECT *

FROM modulo

WHERE modulo LIKE '%PREST%' ;


Operadores de Comparación
Between
SELECT *

FROM practica

WHERE f_inicio_vigencia

BETWEEN '01/06/2017' AND '31/08/2017'


Operadores Comparación NOT
Between
SELECT *

FROM practica

WHERE sysdate

NOT BETWEEN f_inicio_vigencia

AND f_fin_vigencia
Operadores de Comparación IN
SELECT * El orden NO es importante
y puede haber repetidos
FROM modulo

WHERE id_modulo IN (53,51,52,53,50)


Operadores de Comparación IN
SELECT practica, id_modulo

FROM practicasxmodulo

WHERE modulo IN (

SELECT id_modulo

FROM modulo

WHERE d_modulo
En lugar de agregar los
valores, se puede realizar LIKE '%SALUD MENTAL%'
un SELECT para obtener
los valores que necesito
);
incluir en el IN.
Operadores de Comparación IN

Obtengo todas las


prácticas que pertenecen
a los módulos de Salud
Mental.
Operadores de Comparación ALL
SELECT *

FROM modulo

WHERE id_modulo >= ALL (SELECT id_modulo

FROM modulo);

Obtengo el mayor número


de Modulo.
Clausula ORDER BY
▪ ORDER BY permite dar el orden deseado a las filas seleccionadas.

▪ Es posible ordenar por la combinación de varias columnas.

▪ El sentido en que se debe ordenar es determinado por los indicadores:


ASC (ascendente) y DESC (descendente). Si no se indica ninguno,
por defecto ordena de forma ascendente.
Clausula ORDER BY
SELECT * Puedo ordenar por varias
columnas e
FROM examenes intercambiando las formas
de ordenamiento (ASC,
GROUP BY id_materia DESC).

ORDER BY id_materia ASC, fecha DESC, nota, alumno ASC;

SELECT id_depto, SUM(salario) total


Puedo ordenar por una
FROM empleados función de grupo como así
también por el orden del
GROUP BY id_depto campo, en este caso,
orden ‘1’ (columna
ORDER BY SUM(salario) DESC, 1 ASC; id_depto).
¿Dudas?
¡Muchas Gracias!

También podría gustarte