Está en la página 1de 2

Realizar Consultas

Select [distinct] *|columna(s) |expresiones


[Into variable]
From tabla [as] alias1,. . ., tabla n [as] alias n
[Where columna | expresin <operador>|between | like| in]
[Order by <columna| expresin> [asc] desc;

Like (como)= Like funciona con dos tipos de caracteres especiales:


% es un comodn para representar todos los caracteres
_ para representar cualquier carcter en una posicin
In (En conjunto)
Any (cualquiera) y Some (alguno)

Funciones
Funciones de Caracteres
UPPER: transforma a MAYSCULA. UPPER(CHAR)
LOWER: transforma a MINSCULA. LOWER(CHAR)
INITCAP: transforma las iniciales a MAYSCULAS. INITCAP(CHAR)
LENGTH: dice el LARGO de la cadena. LENGTH(CHAR)
SUBSTR: muestra desde una x posicin de una cadena los z caracteres siguientes. SUBSTR(char,x,z)
CONCAT: concadena cosas. CONCAT(arg,arg2) // Lo mismo que ||
INSTR: muestra la posicin del primer carcter que coincida con x. INSTR(arg1,x)
TRIM: elimina los primeros x del argumento. TRIM(x from arg)
REPLACE: busca x en el argumento y los reemplaza con y. REPLACE(arg,x,y)
LPAD/RPAD: rellena cada argumento con x hasta alcanzar una posicin y. XPAD(arg,x,y)
Funciones de Nmeros
ROUND: redondea un numero hasta x, si no hay x, redondea hasta el entero. ROUND(arg,x)
TRUNC: trunca un numero hasta x, si no hay x, trunca hasta el entero. TRUNC(arg,x)
MOD: muestra el resto entre x e y. MOD(x,y)
Ejemplo:
SELECT round(1234.5678,2) "ROUND TWO", round(1234.5678) "ROUND ALONE",trunc(1234.5678,2)
"TRUNC TWO", trunc(1234.5678) "TRUNC ALONE", mod(32,11) FROM DUAL;
Funciones de Fecha
*Todas llevan (a,b)
MONTHS_BETWEEN: muestra los meses entre a y b. [a>b]
ADD_MONTHS: aade al a, b cantidad de meses.
NEXT_DAY: muestra desde el da a, el siguiente da b.
LAST_DAY(a): muestra cual es el ltimo da del meses correspondiente.
Ejemplo:
SELECT months_between('01/01/2014','01/10/2013'), add_months('25/10/2017',6),
next_day('11/03/2014','Domingo'), last_day('01/02/2017')FROM DUAL;
Conversores
TO_DATE: convierte de CHAR a DATE.
TO_CHAR: convierte de DATE o NUMBER a CHAR.
TO_NUMBER: convierte de CHAR a NUMBER.
Ejemplo:
SELECT to_number('98'),to_char(98),to_date('10112017') FROM DUAL;
SELECT to_char(HIRE_DATE,'dd/mm/yyyy') FECHA, to_char(HIRE_DATE,'DD month yyyy') FECHA,
to_char(HIRE_DATE,'dd "de" month "del" yyyy hh24:mi:ss') FECHA FROM EMPLOYEES;
SELECT SALARY,to_char(salary,'$99,999.00')f1,to_char(salary,'$0099,999.00')f2,
to_char(salary,'$99G999D00')f3,to_char(salary,'$999999V000')f4 from employees;
Tabla Dual
La tabla DUAL es una tabla inexistente que permite hacer clculos y/o probar funciones.
Nulos

NVL: Transforma el null para mostrar otro nmero o texto, dependiendo del tipo de dato que se trabaje
para que sea el mismo tipo de dato a mostrar
NVL2: Se le da dos opciones en la tabla si no es nulo da la primera opcin, pero en el caso de que sea
nulo se escribir la segunda opcin (tienen que ser del mismo tipo (o nmero o texto pero no ambos))
NULLIF: Compara los valores de las opciones dadas, en la cual si los valores de ambas opciones se
marcara nulo, si son diferentes se entregara el valor del primer valor dado
COALESCE= Compara los valores, en la cual si ambos son nulos se mostrada el nmero que se
entrega(9999), si uno de los dos no es nulo se mostrara el que no lo es, si ambos no son nulos muestra
el primer argumento

Bifurcaciones y Evaluaciones

CASE: (recomendacin: escribirlo hacia abajo) si cumple con una condicin o con la condicin dada
cumple con la peticin(los when) y si no es ninguno se deja como esta gracias al else.
Ejemplo:

SELECT EMPLOYEE_ID, JOB_ID, DEPARTMENT_ID, SALARY,


case JOB_ID
WHEN 'PR_REP' THEN SALARY+SALARY*0.3
WHEN 'SA_MAN' THEN SALARY+SALARY*0.5
WHEN 'IT_PROG' THEN SALARY+SALARY*0.7
ELSE SALARY END BONO FROM EMPLOYEES;

DECODE: Es parecido al CASE pero este se da la condicin y si es igual a eso har eso y as
sucesivamente hasta que termine lo que pide.

Ejemplo:
SELECT EMPLOYEE_ID, JOB_ID, DEPARTMENT_ID, SALARY,
DECODE(job_id,'PR_REP',SALARY+SALARY*0.3,'SA_MAN',SALARY+SALARY*0.5,'IT_PROG',
SALARY+SALARY*0.7,SALARY) DECODE FROM EMPLOYEES;

También podría gustarte