Funciones en sql
Las funciones en SQL nos permiten crear manejar de mejor manera una base de datos ya sea estas de tipo carácter, aritméticas fecha y hora u otras
Ejemplos
Funciones que devuelven caracteres
Este tipo de funciones devuelven un carácter o varios caracteres.
Función | Propósito |
CHR(n) | Nos devuelve el carácter cuyo valor en binario es n |
CONCAT(cad1, cad2) | Nosdevuelve cad1 concatenada con cad2 |
UPPER(cad) | Convierte cad a mayúsculas |
LOWER(cad) | Convierte cad a minúsculas |
LPAD(cad1,n[,cad2]) | Con esta función añadimos caracteres a cad1 por la izquierda hasta una longitud máxima dada por n |
INITCAP(cad) | Convierte la primera letra de cad a mayúscula |
LTRIM(cad [,set]) | Elimina un conjunto de caracteres a la izquierda de cad, siendoset el conjunto de caracteres a eliminar |
RPAD(cad1, n[,cad2]) | Con esta función añadimos caracteres de la misma forma que con la función LPAD pero esta vez los añadimos a la derecha |
RTRIM(cad[,set]) | Hace lo mismo que LTRIM pero por la derecha |
REPLACE(cad,cadena_buscada [,cadena_sustitucion] ) | Sustituye un conjunto de caracteres de 0 o más caracteres, devuelve cad con cadaocurrencia de cadena_buscada sustituida por cadena_sustitucion |
SUBSTR(cad, m[,n]) | Devuelve la subcadena de cad que abarca desde m hasta el numero de caracteres dados por n. |
TRANSLATE(cad1,cad2,cad3) | Convierte caracteres de una cadena en caracteres diferentes. Devuelve cad1 con los caracteres encontrados en cad2 y sustituidos por los caracteres de cad3 |
Ponemos algunos ejemplos deutilización de estas funciones:
Sentencia SQL que nos devuelve las letras cuyo valor ASCII es el 45 y el 23
select CHR(45), CHR(23) FROM TABLA;
Sentencia SQL que obtiene el nombre de los alumnos sacando por pantalla la siguiente frase: el nombre del alumno es (nombre que está almacenado en la tabla)
select CONCAT ('el nombre de alumno es', nombre) from alumno;
Sentencia SQL que medevuelve los nombres de los alumnos en mayúsculas
select UPPER(nombre) from alumno;
Sentencia SQL que obtiene de un campo nombre, las 3 primeras letras
select SUBSTR(nombre,0,3) from alumno;
Y así con el resto de funciones…
Funciones que devuelven valores numéricos
Estas funciones nos devuelven números a modo de información.
Función | Propósito |
ASCII(cad) | Devuelve elvalor ASCII de la primera letra de cad |
INSTR(cad1, cad2[,comienzo[,m]]) | Función que busca un conjunto de caracteres dentro de una cadena. Nos devuelve la posición de cad2 en cad1 empezando a buscar en comienzo |
LENGTH(cad) | Devuelve en número de caracteres de cad |
ejemplos
Sentencia SQL que nos devuelve el valor ASCII de la letra ('s')
select ASCII('s') from tabla; Sentencia que nos devuelve la posición de la ocurrencia 'pe' dentro de la cadena 'Los perros están bien' a partir de la posición 2
select INSTR('Los perros están bien','pe',2) from tabla;
Sentencia SQL que nos devuelve el numero de caracteres de los nombres de los alumnos
select LENGTH(nombre) from alumnos;
Funciones de fechas y hora
Dentro de SQL tenemos un tipo de dato denominado DATE.Este campo tiene el siguiente formato predeterminado:
'dd/mm/yy'
Este formato lo podemos modificar con la función TO_CHAR de la cual hablaremos más adelante en el siguiente artículo.
Cabe señalar que el tipo de dato DATE también almacena la siguiente información en el siguiente orden:
Siglo/Año/Mes/Día/Hora/Minutos/Segundos
A continuación mostramos una tabla con las funcionespara el manejo de fechas en SQL:
Función | Propósito |
SYSDATE | Devuelve la fecha del sistema |
ADD_MONTHS (fecha, n) | Devuelve la fecha incrementada en n meses |
LAS_DAY (fecha) | Devuelve la fecha del último día del mes que contiene fecha |
MONTHS_BETWEEN (fecha1, fecha2) | Devuelve la diferencia en meses entre la fecha1 y la fecha2 |
NEXT_DAY (fecha, cad) | Devuelve la fecha del...
Regístrate para leer el documento completo.