Está en la página 1de 17

FUNDAMENTOS DDL Y DML EN BASES DE DATOS

Alexis Rojas Cordero


(Profesor)
CREACIÓN Y MANEJO DE DATOS.

INSTRUCCIONES
DML
(Data Manipulation Languaje)

Ing. Alexis Rojas Cordero


PROPIEDADES DEL
ALGEBRA RELACIONAL
La proyección proyecta
Projection
columnas

Selection La Selección me extrae filas

Join El Join me permite


seleccionar columnas
de tablas diferentes
Tabla 1 Tabla 2
09/11/2019 09/11/2019 3
Ing. Alexis Rojas Cordero
SELECT
La sentencia SELECT es la instrucción que nos permite leer los datos de
una tabla o de varias tablas a la vez.

Con el uso de la sentencia WHERE, podemos limitar el alcance de la


consulta.
SELECT *|{[DISTINCT] column|expression [alias],...}
Sintaxis: FROM table
[WHERE condition(s)];

La cláusula DISTINCT, suprime las filas repetidas, el (*) permite seleccionar


todas las columnas.

El FROM me indica de que tabla o tablas tomar los datos


09/11/2019 09/11/2019 4
Ing. Alexis Rojas Cordero
EJEMPLOS - SELECT

SELECT (*). Selecciona todas las columnas


Refleja la selección

SELECT * FROM clientes;

SELECT DE UNAS CIERTAS COLUMNAS


(proyección)
SELECT num_clie, empresa FROM clientes;

09/11/2019 09/11/2019 5
Ing. Alexis Rojas Cordero
Expresiones Aritméticas

• Los operadores de Oracle son los mismos de los demás


lenguajes.
Operator Description
+ Add
- Subtract
* Multiply
/ Divide

Ejemplo
SELECT nombre, primer_apellido, cuota, cuota + 500
FROM repventas;

09/11/2019 09/11/2019 6
Ing. Alexis Rojas Cordero
Presedencia de las
operaciones
La secuencia de las operaciones es primero lo que
esta entre paréntesis luego las multiplicaciones y
divisones y después la sumas o restas.
SELECT apellido, sueldo, 12*sueldo+100
FROM empleados; 1

apellido sueldo 12*sueldo+100


SELECT apellido, sueldo, 12*(sueldo+100)
FROM empleados; 2

apellido sueldo 12*(sueldo+100)


09/11/2019 09/11/2019 7
Ing. Alexis Rojas Cordero
Definiendo el null

El null es un valor que no está disponible, no es asignado, es desconocido, es inaplicable.


Un nulo no es igual a cero ni a un espacio

SELECT nombre, cargo, sueldo, commision


FROM empleados;

Nombre Cargo Sueldoj comision

09/11/2019 09/11/2019 8
Ing. Alexis Rojas Cordero
Operaciones con nulls

Cualquier operación con campos que son nulls, genera un resultado nulo.
Supongamos que para el ejemplo, la comisión es nula.

SELECT nombre, 12*sueldo*comision


FROM employees;

nombre 12 * sueldo * comision


Pedro Perez

09/11/2019 09/11/2019 9
Ing. Alexis Rojas Cordero
INSERTANDO DATOS
RESULTADOS DE UN INSERT - INTO

SQL> INSERT INTO pagos


2 VALUES('2222','John Davidson','IN','25-SEP-92',40000.00,1500);

1 row created.

SQL> INSERT INTO pagos


2 VALUES('3333','Susan Ash','AP','05-FEB-00',25000.00,500);

1 row created.

SQL> INSERT INTO pagos


2 VALUES('4444','Stephen York','CM','03-JUL-97',42000.00,2000);

SQL> SELECT * FROM pagos;

PAG_ NOMBRE CT FECHA_INI SALARIO BONOS


---- -------------------- -- --------- --------- ---------
1111 Linda Costa CI 15-JAN-97 45000 1000
2222 John Davidson IN 25-SEP-92 40000 1500
3333 Susan Ash AP 05-FEB-00 25000 500
4444 Stephen York CM 03-JUL-97 42000 2000
Sentencia UPDATE
 Actualiza valores de una o más columnas para un subconjunto de filas de una
tabla.
 Para guardar cambios hay que ejecutar COMMIT;
 Para cancelar la modificación podemos hacer ROLLBACK;

Sintaxis.
UPDATE nombre-tabla
SET columna1 = valor1 [, columna2 = valor2 ...]
[WHERE condición ]

 Actualiza los campos correspondientes junto con los valores que se le


asignen, en el subconjunto de filas que cumplan la condición de selección.

 Si no se pone condición de selección, la actualización se da en todas


las filas de la tabla.
Sentencia UPDATE - Ejemplos
En este ejemplo cambiamos el nombre y estado de un pedido:

UPDATE T_PEDIDOS
SET NOMBRE='JUAN', ESTADO=1
WHERE CODPEDIDO=125;

En este ejemplo cambiamos el estado de todos los pedidos:

UPDATE T_PEDIDOS
SET ESTADO=1;

En este ejemplo ponemos a nulo el nombre de un pedido:

UPDATE T_PEDIDOS
SET NOMBRE=NULL
WHERE CODPEDIDO=125;
Extensión para delete
• Se pueden encadenar condiciones en la cláusula where
de un delete
• Sintaxis simplificada :
delete table_name
from table_list
[where join_condition]

• Ejemplo
delete titles
from titulos t, editores e
where t.pub_id = e.pub_id
and e.estado = "CA"
Sintaxis para delete
• Sintaxis Simplificada:
delete [from] table_name
[where condition]

• Ejemplos:
delete from editor; (Borra todos los registros)
delete from titulo
where tipo = "business“
delete from autor
where au_nombre = "Luis"
and au_apell1 = “Caicedo"
truncate table
• truncate table borra todas las filas de una tabla
• La operación se ejecuta más rápido que la
correspondiente sentencia delete
• El comando no se puede usar para borrar algunas filas
de la tabla

• Sintaxis simplificada:
truncate table table_name

• Ejemplo:
truncate table editors;
09/11/2019 17

También podría gustarte