Blog de Informática Javier
Facebook de Informatica Javier
Inicio / SQL a fondo instrucciones y variantes.

SQL a fondo instrucciones y variantes.


Sentencia DDL Objetivo
Alter procedure Recompilar un procedimiento almacenado.
Alter Table Añadir o redefinir una columna, modificar la asignación de almacenamiento.
Analyze Recoger estadísticas de rendimiento sobre los objetos de la BD para utilizarlas en el optimizador basado en costes.
Create Table Crear una tabla.
Create Index Crear un índice.
Drop Table Eliminar una tabla.
Drop Index Eliminar un índice.
Grant Conceder privilegios o papeles, roles, a un usuario o a otro rol.
Truncate Eliminar todas las filas de una tabla.
Revoke Retirar los privilegios de un usuario o rol de la base de datos.
Sentencia DML Objetivo
Insert Añadir filas de datos a una tabla.
Delete Eliminar filas de datos de una tabla.
Update Modificar los datos de una tabla.
Select Recuperar datos de una tabla.
Commit Confirmar como permamentes las modificaciones realizadas.
Rollback Deshacer todas las modificaciones realizadas desde la última confirmación.

Operadores de Comparación

Operador Operación Ejemplo
= Igualdad select * from emp where cod_dep = 100;
!=, <>, ^= Desigualdad select * from emp where cod_dep != 100;
< Menor que select * from emp where cod_dep < 200;
> Mayor que select * from emp where cod_dep > 200;
<= Menor o igual que select * from emp where cod_dep <= 200;
>= Mayor o igual que select * from emp where cod_dep >= 200;
in Igual a cualquiera de los miembros entre paréntesis select * from emp where cod_dep in (100, 300);
not in Distinto a cualquiera de los miembros entre paréntesis select * from emp where cod_dep not in (200);
between Contenido en el rango select * from emp where cod_emp between 100 and 199;
not between Fuera del rango select * from emp where cod_emp not between 100 and 199;
like '_abc%' Contiene la cadena 'abc' a partir del segundo carácter y luego cualquier cadena de caracteres select * from emp where nombre like 'Ma%';

Operadores de Aritméticos

Operador Operación Ejemplo
+ Suma select nombre, salario+comision from emp where oficio='VENDEDOR';
- Resta select nombre from emp where sysdate-fecha_alta > 365;
* Producto select nombre, salario*12 from emp;
/ División select nombre, salario/31 from emp;

Operadores de Cadenas de Caracteres

Operador Operación Ejemplo
|| Concatenación select nombre||oficio from emp;

Funciones Aritméticas

Función Cometido Ejemplo Resultado
ABS(n) Calcula el valor absoluto de n. select abs(-15) from dual; 15
CEIL(n) Calcula el valor entero inmediatamente superior o igual a n. select ceil(15.7) from dual; 16
FLOOR(n) Calcula el valor entero inmediatamante inferior o igual a n. select floor(15.7) from dual; 15
MOD(m,n) Calcula el resto resultante de dividir m entre n. select mod(11,4) from dual; 3
POWER(m,n) Calcula la potencia n-esima de m. select power(3,2) from dual; 9
ROUND(m,n) Calcula el redondeo de m a n decimales. Si n<0 el redondeo se efectua a por la izquierda del punto decimal. select round(123.456,1) from dual; 123.5
SQRT(n) Calcula la raíz cuadrada de n. select sqrt(4) from dual; 2
TRUNC(m,n) Calcula m truncado a n decimales (n puede ser negativo). select trunc(123.456,1) from dual; 123.4
SIGN(n) Calcula el signo de n, devolviendo -1 si n<0, 0 si n=0 y 1 si n>0. select sign(-12) from dual; -1

Funciones de Cadenas de Caracteres

Función Cometido Ejemplo Resultado
CHR(n) Devuelve el carácter cuyo valor codificado es n. select chr(65) from dual; A
ASCII(cad) Devuelve el valor ascii de cad. select ascii('A') from dual; 65
CONCAT(cad1,cad2) Devuelve cad1 concatenada con cad2. Esta función es esquivalente al operador ||. select concat(concat(nombre,' es '),oficio) from emp; Cano es Presidente, etc.
LOWER(cad) Devuelve la cadena cad con todas sus letras convertidas a minúsculas. select lower('MinUsCulAs') from dual; minusculas
UPPER(cad) Devuelve la cadena cad con todas sus letras convertidas a mayúsculas. select upper('maYuSCulAs') from dual; MAYUSCULAS
INITCAP(cad) Devuelve cad con el primer caracter en mayúsculas. select initcap('isabel') from dual; Isabel
LPAD(cad1,n,cad2) Devuelve cad1 con longitud n, y ajustada a la derecha, rellenando por la izquierda con cad2. select lpad('P',5,'*') from dual; ****P
RPAD(cad1,n,cad2) Devuelve cad1 con longitud n, y ajustada a la izquierda, rellenando por la derecha con cad2. select rpad('P',5,'*') from dual; P****
REPLACE(cad,ant,nue) Devuelve cad en la que cada ocurrencia de la cadena ant ha sido sustituida por la cadena nue. select replace('digo','i','ie') from dual; diego
SUBSTR(cad,m,n) Devuelve la sudcadena de cad compuesta por n caracteres a partir de la posicion m. select substr('ABCDEFG',3,2) from dual; CD
LENGTH(cad) Devuelve la longitud de cad. select length('cadena') from dual; 6

Funciones de Manejo de Fechas

Función Cometido Ejemplo Resultado
SYSDATE Devuelve la fecha y hora actuales. select sysdate from dual; 14-MAR-97
ADD_MONTHS(d,n) Devuelve la fecha d incrementada en n meses. select add_months(sysdate,4) from dual; 14-JUL-97
LAST_DAY(d) Devuelve la fecha del último día del mes de d. select last_day(sysdate) from dual; 31-MAR-97
MONTHS_BETWEEN(d1, d2) Devuelve la diferencia en meses entre las fechas d1 y d2. select months_between(sysdate,'01-JAN-97') from dual; 2.43409424
NEXT_DAY(d,cad) Devuelve la fecha del primer día de la semana cad después de la fecha d. select next_day(sysdate, 'sunday') from dual; 16-MAR-97

Funciones de Conversión de Tipos

Función Cometido Ejemplo Resultado
TO_NUMBER(cad,fmto) Convierte la cadena cad a un número, opcionalmente de acuerdo con el formato fmto. select to_number('12345') from dual; 124345
TO_CHAR(d, fmto) Convierte la fecha d a una cadena de caracteres, opcionalmente de acuerdo con el formato fmto. select to_char(sysdate) from dual; '14-MAR-97'
TO_DATE(cad,fmto) Convierte la cadena cad de tipo varchar2 a fecha, opcionalmente de acuerdo con el formato fmto. select to_date('1-JAN-97') from dual; 01-JAN-97

Con las fechas pueden utilizarse varios formatos. Estos formatos permiten modificar la presentación de una fecha. En la siguiente tabla se presentan algunos formatos de fecha y el resultado que generan.

Máscaras de Formato Numéricas

Formato Cometido Ejemplo Resultado
cc ó scc Valor del siglo. select to_char(sysdate,'cc') from dual; 20
y,yyy ó sy,yyy Año con coma, con o sin signo. select to_char(sysdate,'y,yyy') from dual; 1,997
yyyy ó yyy ó yy ó y Año sin signo con cuatro, tres, dos o un dígitos. select to_char(sysdate,'yyyy') from dual; 1997
q Trimestre. select to_char(sysdate,'q') from dual; 1
ww ó w Número de la semana del año o del mes. select to_char(sysdate,'ww') from dual; 11
mm Número del mes. select to_char(sysdate,'mm') from dual; 03
ddd ó dd ó d Número del día del año, del mes o de la semana. select to_char(sysdate,'ddd') from dual; 073
hh ó hh12 ó hh24 La hora en formato 12h. o 24h. select to_char(sysdate,'hh') from dual; 12
mi Los minutos de la hora. select to_char(sysdate,'mi') from dual; 15
ss ó sssss Los segundos dentro del minuto, o desde las 0 horas. select to_char(sysdate,'sssss') from dual; 44159

Máscaras de Formato de Caracteres

Formato Cometido Ejemplo Resultado
syear ó year Año en Inglés select to_char(sysdate,'syear) from dual; nineteen ninety-seven
month o mon Nombre del mes o su abreviatura de tres letras. select to_char(sysdate,'month') from dual; march
day ó dy Nombre del día de la semana o su abreviatura de tres letras. select to_char(sysdate,'day') from dual; friday
a.m. ó p.m. El espacio del día. select to_char(sysdate,'a.m.') from dual; p.m.
b.c. ó a.d. Indicador del año respecto al del nacimiento de Cristo. select to_char(sysdate,'b.c.') from dual; a.d.

Otras Funciones

Función Cometido Ejemplo Resultado
DECODE(var, val1, cod1, val2, cod2, ..., defecto) Convierte el valor de var, de acuerdo con la codificación. select decode(oficio, 'Presidente', 'P', 'Director', 'D', 'X') from emp; P, D, X, ...
GREATEST(exp1, exp2, ...) Devuelve el mayor valor de una lista. sin ejemplo. sin ejemplo.
LEAST(cad,fmto) Devuelve el menor valor de una lista. sin ejemplo. sin ejemplo.
NVL(val, exp) Devuelve la expresión exp si val es NULL, y val si en otro caso. select salario+nvl(comision,0) from emp; 450000, 350000, ...

Funciones de Agrupamiento

Función Cometido Ejemplo
COUNT(col) Cuenta el número de filas agrupadas. select count(nombre),oficio from emp group by oficio;
AVG(col) Calcula el valor medio de todos los valores de la columna col. select avg(salario),oficio from emp group by oficio;
MAX(col) Calcula el valor máximo de todos los valores de la columna col. select max(salario),oficio from emp group by oficio;
MIN(col) Calcula el valor mínimo de todos los valores de la columna col. select min(salario),oficio from emp group by oficio;
SUM(col) Calcula la suma de los valores de la columna col. select sum(salario), oficio from emp group by oficio;
STDDEV(col) Calcula la desviación típica de los valores de la columna col sin tener en cuenta los valores nulos. select stddev(salario), oficio from emp group by oficio;
VARIANCE(col) Calcula la varianza de los valores de la columna col sin tener en cuenta los valores nulos. select variance(salario), oficio from emp group by oficio;

La evaluación de las diferentes cláusulas en tiempo de ejecución se efectúa en el siguiente orden:

  • WHERE filtra las filas
  • GROUP BY crea una tabla de grupo nueva
  • HAVING filtra los grupos
  • ORDER BY clasifica la salida

Si se hacen cambios en los privilegios de la base de datos se deberá ejecutar esto para que se apliquen los cambios:

flush privileges;




ARTÍCULOS

Solucionar problemas de espacio en su telefono movil
Como saber si tu movil es realmente acuatico
Usar la salida de audio optico de la televesion
Robot de limpieza domesticos
Soportes VESA para monitores de ordenador
Modelos de Raspberry para comprar
Sensores de Temp.
Memoria Ram Linux
Como ver contenido del movil en la television
Escáner de negativos y diapositivas
Conectar el portatil al coche con un transformador
Servidor de Vigilancia en Unix
Huerto doméstico inteligente
Gestor de Inicio Grub Linux
Configurar LDAP
Montar un servidor de correo propio
Gestion de Discos fdisc, RAID, du, quotas, avisos
Manual Comando Linux
Como compilar de paquetes en linux
Ventilador de cuello: ¿son útiles?
Buscar en Google con Mozilla Firefox de la barra de direccion
Como instalar el modo grafico en linux server
Botón Enter gigante
Instalar y administrar un servidor linux en modo web con webmin
Servidor de video con webcam
Como instalar un servidor web Apache con PHP5 y Mysql
Lámpara flotante magnética
Minimizar el uso de la swap
SQL a fondo instrucciones y variantes.
Móviles con tapa para personas mayores
Reparar Audio Linux
Crear usuarios linux y sus modificadores
Compresores desde terminal tar, gz, bz2, ...
Como montar un servidor VPN
Los 10 virus más peligrosos de 2016
¿Que es un sistema operativo?
Aros de luz para Tik Tok
Enviar email con línea de comandos
Lupas para móvil
Puertos de internet conocidos
Wake on Lan, arranque por red
Reparar HD con linux
Sincronizar ficheros con Rsync y ssh
Configurar un servidor DLNA para ver contenidos en Smart TV y otros dispositivos
Optimizar Mysql y PHP

Como Afiliado de Amazon, obtengo ganancias de las compras adscritas que se generen a través de esta web sin que esto repercuta de modo alguno en el precio que tú pagas por los productos.
Este sitio web usa cookies, puedes ver la política de cookies, aquí -
Política de cookies