You are on page 1of 44

14-10-2017 Manual de Oracle

Bases de datos II
Autores: Juan David Sarmiento – Carlos cobo

Juan David Sarmiento Rojas – Carlos Cobo


UNIVERSIDAD SANTIAGO DE CALI
Contenido
Insertar datos en una tabla usando todos los campos ....................................................................... 2
Insertar datos en una tabla usando algunos campos ......................................................................... 3
Insertar gran cantidad de datos en una tabla ...................................................................................... 4
Consultas con cálculos ........................................................................................................................ 8
Borrado de registros ............................................................................................................................ 9
Actualización de registros ................................................................................................................. 10
Alias de las columnas ........................................................................................................................ 11
Limitación de número de resultados ................................................................................................. 12
Cálculos en consultas ....................................................................................................................... 13
Cambiar el nombre de una tabla ....................................................................................................... 14
Adicionar a un campo a una tabla existente ..................................................................................... 15
Cambiar el nombre a una columna o campo .................................................................................... 16
Cambiar el tipo de dato a una columna o campo.............................................................................. 17
Eliminar una columna o campo ......................................................................................................... 18
Cambiar el formato de presentación de la fecha .............................................................................. 19
Hora y fecha actual ........................................................................................................................... 21
Extraer año, mes, día de una fecha .................................................................................................. 22
Concatenar ........................................................................................................................................ 23
Operadores Lógicos y de Bit ............................................................................................................. 24
AND ............................................................................................................................................... 24
OR ................................................................................................................................................. 25
Combinando Tablas .......................................................................................................................... 26
Uso del JOIN ..................................................................................................................................... 27
Consulta #1 ................................................................................................................................... 28
Consulta #2 ................................................................................................................................... 29
Consulta #3 ................................................................................................................................... 30
Consulta #4 (usando el JOIN) ....................................................................................................... 31
Consulta #5 el cliente compra, se marcha y no se identifica (uso de LEFT JOIN) ....................... 32
Consulta #6 Uso de RIGHT JOIN ................................................................................................. 36
Uso del NOT ...................................................................................................................................... 37
Uso del UNION .................................................................................................................................. 39
UNION ALL........................................................................................................................................ 41
SubSelecciones ................................................................................................................................. 42
Segundo Ejemplo .............................................................................................................................. 43
Insertar datos en una tabla usando todos los campos
Si se va a dar valor a cada campo de la tabla, entonces no es necesario nombrar esos
campos, se genera la instrucción INSERT respetando el orden de los campos y la
coincidencia del tipo de valor

INSERT INTO personas VALUES(1, 'Chloe', 'Bennet', TO_DATE('1992-04-03', 'YYYY-


MM-DD'), 'Chicago', 'chloebennet@outlook.com', 350000, 'Rock', 'O+', 340000);

SELECT * FROM PERSONAS WHERE CODIGO = '1';


Insertar datos en una tabla usando algunos campos
INSERT INTO personas (codigo, nombre, apellido, fechanace) VALUES(2, 'Elizabeth',
'Henstridge', TO_DATE('11-09-1987', 'DD-MM-YYYY'));
Insertar gran cantidad de datos en una tabla
Los datos están en un archivo plano (no son sentencias INSERT).
Hacer click en siguiente:
Consultas con cálculos
SELECT nombre, apellido, salario, salario*1.07 FROM personas;
Borrado de registros
DELETE FROM personas WHERE codigo=7;
Actualización de registros
UPDATE personas SET Nombre="Sherlock" WHERE codigo = 5;
Alias de las columnas
En los resultados de la consulta se pueden modificar los encabezados de las columnas
con la palabra reservada AS. El uso de alias es muy importante porque más adelante, se
pueden hacer operaciones directamente con el alias.
Limitación de número de resultados
En oracle, LIMIT no funciona, se debe usar la syntaxis where rownum < numero de
registros a mostrar.
Cálculos en consultas
SELECT nombre, apellido, saldo*1.19 FROM personas;
Cambiar el nombre de una tabla
Oracle no acepta la syntaxis de RENAME TABLE tablavieja TO tablanueva, con oracle
solo necesitamos usar el RENAME
Adicionar a un campo a una tabla existente

La tabla colores se le añadió una nueva columna


Cambiar el nombre a una columna o campo

Script Oracle "Alter Table" para cambiar el nombre de una columna:

alter table <nombre_de_la_tabla> rename column


<nombre_antiguo_del_campo> to<nuevo_nombre_del_campo>;

El nombre de la columna sigla se renombró a oficial


Cambiar el tipo de dato a una columna o campo

La sintaxis es: ALTER TABLE tabla MODIFY campo_a_variar Tipo_de_dato_nuevo;

El tipo de dato pasa a ser INTEGER


Eliminar una columna o campo
Para eliminar campos de una tabla la sintaxis básica es la siguiente:
alter table NOMBRETABLA
drop column NOMBRECAMPO;
Cambiar el formato de presentación de la fecha

SELECT nombre1, nombre2, DATE_FORMAT(fechanace, "%d %M %Y") FROM nomina


Aplicando esta instrucción se cambia la forma como ORACLE muestra la fecha:
‘nls_date_language=english’
Hora y fecha actual
SELECT CURRENT_TIMESTAMP FROM DUAL;
Extraer año, mes, día de una fecha
AÑO: TO_CHAR( FECHANACE , ‘YYYY’)
MES: TO_CHAR( FECHANACE , ‘MONTH’)
DÍA:TO_CHAR( FECHANACE , ‘DD’)
Concatenar
Operadores Lógicos y de Bit

 Mayor que >


 Menor que <
 Mayor o igual que >=
 Menor o igual que <=
 Diferente <>
 Igual =
AND
OR
Combinando Tablas
Uso del JOIN
TABLA CLIENTE

TABLA VENDEDOR

TABLA VENTAS
Consulta #1
Traer el nombre del vendedor que hizo la venta con código 1
Consulta #2
Muestra el nombre y apellido del vendedor, nombre y apellido de cada cliente en cada
registro de la tabla ventas
Consulta #3
Trae el nombre y apellido del cliente de cada venta
Consulta #4 (usando el JOIN)
¿Qué hace? Lo mismo que la consulta #3
Consulta #5 el cliente compra, se marcha y no se identifica (uso de LEFT JOIN)
Ejecutar script

La tabla ventas tiene un cliente null

Si se repite la consulta #2, no mostrara el registro


Como no hay un registro de cliente null en ventas, no trae ningún registro de cliente
Deja de funcionar si se invierte el orden de las tablas
Consulta #6 Uso de RIGHT JOIN
La anterior consulta (con resultado errado) se puede arreglar con el RIGHT JOIN
Uso del NOT

Not between
Uso del UNION

UNION muestra los registros de ambas tablas, sin mostrar los registros duplicados
UNION ALL
UNION ALL muestra los registros de ambas tablas, mostrando los registros duplicados
SubSelecciones
Muestre el nombre, apellido y salario de la persona que tiene el mayor salario
Segundo Ejemplo
Traer las personas que estén en el fondopension cuyo nombre tenga la letra “e”

You might also like