Está en la página 1de 9

POLITÉCNICO DE COLOMBIA

EDUCACIÓN PARA EL TRABAJO Y EL DESARROLLO HUMANO


Módulo: DESARROLLAR LA SOLUCION DE SOFTWARE
BASE DE DATOS
DOCUMENTO DE APOYO
CÓDIGO: NO APLICA VERSIÓN: 1 Página 1 de 9

FUNCIONES INTEGRADAS DE MYSQL

MySQL viene incluido con una serie de funciones integradas. Las funciones integradas son
simplemente funciones que ya vienen implementadas en el servidor MySQL. Estas
funciones nos permiten realizar diferentes tipos de manipulaciones en los datos. Las
funciones integradas se pueden clasificar básicamente en las siguientes categorías más
utilizadas.
Funciones de cadenas: operan en tipos de datos de cadena
Funciones numéricas: opere en tipos de datos numéricos
Funciones de fecha: operan en tipos de datos de fecha
Funciones agregadas: opere en todos los tipos de datos anteriores y produzca conjuntos
de resultados resumidos. (GURU99, s.f.)

FUNCIONES DE CADENA
Las funciones de texto en SQL realizan operaciones sobre cadenas de caracteres o
contenido de los campos de tipo carácter y devuelven un valor de cadena o un valor entero.
(MySQL, s.f.)

Las funciones de SQL que permiten el manejo de cadenas de caracteres son:


POLITÉCNICO DE COLOMBIA
EDUCACIÓN PARA EL TRABAJO Y EL DESARROLLO HUMANO
Módulo: DESARROLLAR LA SOLUCION DE SOFTWARE
BASE DE DATOS
DOCUMENTO DE APOYO
CÓDIGO: NO APLICA VERSIÓN: 1 Página 2 de 9

EJEMPLOS DE FUCNCIONES DE CADENA


-Quita los espacios en blanco, reemplaza los espacios en blanco por una cadena
sin caracteres.

SELECT REPLACE('SQL Manual Profesional',' ','');


Resultado: SQLManualProfesional

-Cuarta letra del apellido en mayúscula

SELECT UPPER(SUBSTRING(Replace('Del Castillo',' ',''),4,1));


Resultado: C

-REVERSE invierte la cadena de caracteres.

SELECT REVERSE('Un gestor de base de datos')


Resultado: sotad ed esab ed rotseg Un

-Obtener el valor ASCII del primer carácter

SELECT ASCII('A')
Resultado: 65, la letra A mayúscula
-Elimina los espacios en blanco iniciales, Len obtiene la longitud.
SELECT LENGTH(LTRIM(' Hola'))
POLITÉCNICO DE COLOMBIA
EDUCACIÓN PARA EL TRABAJO Y EL DESARROLLO HUMANO
Módulo: DESARROLLAR LA SOLUCION DE SOFTWARE
BASE DE DATOS
DOCUMENTO DE APOYO
CÓDIGO: NO APLICA VERSIÓN: 1 Página 3 de 9

Resultado: 4 que son los caracteres de la palabra Hola


-Elimina los espacios de la derecha

SELECT LENGTH(RTRIM('Hola '));


Resultado: 4, antes de la palabra Hola hay 1 espacio.
-Concatenar cadenas

SELECT CONCAT(UPPER('Alberto debe ') ,'800' ,SPACE(1) , LOWER('dólares'))


Resultado: ALBERTO DEBE 800 dólares

-En mayúsculas

SELECT UPPER(‘Alberto debe 500 dólares’);

-Función Left

SELECT LEFT('MYSQL',2)
-Resultado: My

-Función Right
SELECT UPPER(RIGHT(RTRIM('Base de Datos '),5));
Resultado: DATOS

-Extraer caracteres, desde la posición 3 extrae 5 caracteres

SELECT SUBSTRING('Gestor de Negocios',4,8)


Resultado: tor de N
-Desde la posición 4 extrae un carácter.
POLITÉCNICO DE COLOMBIA
EDUCACIÓN PARA EL TRABAJO Y EL DESARROLLO HUMANO
Módulo: DESARROLLAR LA SOLUCION DE SOFTWARE
BASE DE DATOS
DOCUMENTO DE APOYO
CÓDIGO: NO APLICA VERSIÓN: 1 Página 4 de 9

SELECT SUBSTRING('Comercial',4,1)
Resultado: e

-Replace, reemplaza la letra a por el número 3

SELECT REPLACE('Este mensaje es el original','e','3');


Resultado: 3st3 m3nsaj3 3s 3l original

FUCNCIONES AGREGADAS
Las funciones de agregación básicas que soportan todos los gestores de datos son las
siguientes:
COUNT: devuelve el número total de filas seleccionadas por la consulta.
MIN: devuelve el valor mínimo del campo que especifiquemos.
MAX: devuelve el valor máximo del campo que especifiquemos.
SUM: suma los valores del campo que especifiquemos. Sólo se puede utilizar en columnas
numéricas.
AVG: devuelve el valor promedio del campo que especifiquemos. Sólo se puede utilizar en
columnas numéricas.
Las funciones anteriores son las básicas en SQL, pero cada sistema gestor de bases de
datos relacionales ofrece su propio conjunto, más amplio, con otras funciones de
agregación particulares.

EJEMPLOS FUCNCIONES AGREGADAS


-Por ejemplo, si queremos obtener algunos datos agregados de la tabla de pedidos de
la base de datos de ejemplo Northwind_Sabatinos, podemos escribir una consulta simple
como la siguiente: (CAMPUMVP, s.f.)
SELECT COUNT(*) AS TotalFilas,
COUNT(ShipRegion) AS FilasNoNulas,
MAX(ShippedDate) AS FechaMax,
POLITÉCNICO DE COLOMBIA
EDUCACIÓN PARA EL TRABAJO Y EL DESARROLLO HUMANO
Módulo: DESARROLLAR LA SOLUCION DE SOFTWARE
BASE DE DATOS
DOCUMENTO DE APOYO
CÓDIGO: NO APLICA VERSIÓN: 1 Página 5 de 9

SUM(Freight) AS PesoTotal,
AVG(Freight) PesoPromedio
FROM Orders;

AGRUPANDO RESULTADOS

-La cláusula GROUP BY unida a un SELECT permite agrupar filas según las columnas
que se indiquen como parámetros, y se suele utilizar en conjunto con las funciones de
agrupación, para obtener datos resumidos y agrupados por las columnas que se
necesiten.

SELECT EmployeeID,
COUNT(*) AS TotalPedidos,
COUNT(ShipRegion) AS FilasNoNulas,
MIN(ShippedDate) AS FechaMin,
MAX(ShippedDate) AS FechaMax,
SUM(Freight) PesoTotal,
AVG(Freight) PesoPromedio
FROM Orders GROUP BY EmployeeID;

FUNCIONES MATEMATICAS
Los operadores aritméticos son "+","-","*" y "/". Todas las operaciones matemáticas retornan
"null" en caso de error. Ejemplo:
SELECT 5/0;
MySQL tiene algunas funciones para trabajar con números. Aquí presentamos algunas.
RECUERDE que NO debe haber espacios entre un nombre de función y los paréntesis
porque MySQL puede confundir una llamada a una función con una referencia a una tabla
o campo que tenga el mismo nombre de una función. (TUTORIALESPROGRAMACIONYA,
s.f.)

EJEMPLOS DE FUNCIONES MATEMATICAS


POLITÉCNICO DE COLOMBIA
EDUCACIÓN PARA EL TRABAJO Y EL DESARROLLO HUMANO
Módulo: DESARROLLAR LA SOLUCION DE SOFTWARE
BASE DE DATOS
DOCUMENTO DE APOYO
CÓDIGO: NO APLICA VERSIÓN: 1 Página 6 de 9

abs(x): retorna el valor absoluto del argumento "x".


Ejemplo:
SELECT ABS(-20); retorna 20.
-ceiling(x): redondea hacia arriba el argumento "x". Ejemplo:
SELECT CEILING(12.34), retorna 13.
-floor(x): redondea hacia abajo el argumento "x". Ejemplo:
SELECT FLOOR(12.34); retorna 12.
-greatest(x,y,..): retorna el argumento de máximo valor.
SELECT GREATEST(1,2,3,5,8,9,4); retorna 9
-least(x,y,...): con dos o más argumentos, retorna el argumento más pequeño.
SELECT LEAST(1,2,3,5,8,9,4); retorna 1
-mod(n,m): significa "módulo aritmético"; retorna el resto de "n" dividido en "m".
Ejemplos:
SELECT MOD(10,3); retorna 1.
-power(x,y): retorna el valor de "x" elevado a la "y" potencia.
Ejemplo:
SELECT POWER(2,3); retorna 8.
-round(x): retorna el argumento "x" redondeado al entero más cercano. Ejemplos:
SELECT round(12.34); retorna 12.
SELECT round(12.64); retorna 13.
-srqt(): devuelve la raiz cuadrada del valor enviado como argumento.
-truncate(x,d): retorna el número "x", truncado a "d" decimales. Si "d" es 0, el
resultado no tendrá parte fraccionaria.
Ejemplos:
SELECT TRUNCATE(123.4567,2); retorna 123.45;
SELECT TRUNCATE (123.4567,0); retorna 123
POLITÉCNICO DE COLOMBIA
EDUCACIÓN PARA EL TRABAJO Y EL DESARROLLO HUMANO
Módulo: DESARROLLAR LA SOLUCION DE SOFTWARE
BASE DE DATOS
DOCUMENTO DE APOYO
CÓDIGO: NO APLICA VERSIÓN: 1 Página 7 de 9

FUNCIONES DE FECHA
Esta función es usada para manipular el formato de muestra de una fecha y una hora.
Vamos a ver algunas funciones básicas para fecha y hora. (HScripts.com, s.f.)
-CURDATE() :
Esta función devuelve la fecha actual en formato 'YYYY-MM-DD' o 'YYYYMMDD' (Año-
Mes-Día)
mysql> select curdate(); --> 2007-01-03
-CURTIME() :
Devuelve la hora actual en formato 'HH:MM:SS' o 'HHMMSS'.
mysql> select curtime(); --> 17:33:07
-DATEDIFF(expression1,expression2) :
expression1 y expression2 son expresiones fecha o fecha-y-hora. Esta función devuelve
expression1 – expression2 expresados como un valor en días de una fecha a la otra. Aquí
sólo las partes de fecha serán consideradas para el cálculo.
mysql> select datediff('2007-2-6 17:33:25','2007-1-1'); --> 36
-DATE_ADD(fechahora, INTERVAL tipo expresión fechahora) :
Esta función de fecha añade la expresión a la datetime suministrada.
mysql> select date_add('2007-1-14', interval 15 day); --> 2007-01-29
Esta función es la misma para DATE_SUB, pero tomará lugarsubstrayéndola en vez de
añadiéndola.
-DAYNAME(fecha) :
Devuelve el nombre del día para una fecha especificada.
mysql> select dayname('2007-01-04'); --> Thursday
-DAYOFMONTH(fecha) or DAY(fecha) :
Devuelve la fecha para el día del mes en el rango de 1 a 31. DAY () es un sinónimo para
DAYOFMONTH().
mysql> select dayofmonth('2007-01-04'); --> 4
-DAYOFWEEK(fecha) :
Devuelve el día de la semana en formato numérico como 1 para Domingo hasta 7 para
Sábado.
mysql> select dayofweek('2007-01-04'); --> 5
POLITÉCNICO DE COLOMBIA
EDUCACIÓN PARA EL TRABAJO Y EL DESARROLLO HUMANO
Módulo: DESARROLLAR LA SOLUCION DE SOFTWARE
BASE DE DATOS
DOCUMENTO DE APOYO
CÓDIGO: NO APLICA VERSIÓN: 1 Página 8 de 9

-DAYOFYEAR(fecha) :
Devuelve el día del año para la fecha dada en formato numérico, en rago de 1 a 366.
mysql> select dayofyear('2007-07-09'); --> 190
-HOUR(hora) :
Devuelve la hora del tiempo especificado en formato numérico de 0 a 23.
mysql> select hour('14:46:12'); --> 14
-MINUTE(hora) :
Devuelve el minuto del tiempo especificado en formato numérico de 0 a 59.
mysql> select minute('14:46:12'); --> 46
-MONTH(fecha) :
Devuelve el mes para la fecha dada en formato numérico en rango de 0 a 12.
mysql> select month('2007-07-09'); --> 7
-MONTHNAME(fecha) :
Devuelve el nombre del mes para la fecha especificada.
mysql> select monthname('2007-07-09'); --> July
-NOW() :
Esta función de fecha devuelve la fecha y hora actual en formato 'YYYY-MM-DD
HH:MM:SS' o YYYYMMDDHHMMSS (Año-Mes-Día Hora:Minuto:Segundo)
mysql> select now(); --> 2007-01-04 14:56:15
POLITÉCNICO DE COLOMBIA
EDUCACIÓN PARA EL TRABAJO Y EL DESARROLLO HUMANO
Módulo: DESARROLLAR LA SOLUCION DE SOFTWARE
BASE DE DATOS
DOCUMENTO DE APOYO
CÓDIGO: NO APLICA VERSIÓN: 1 Página 9 de 9

Bibliografía
CAMPUMVP. (s.f.). Obtenido de https://www.campusmvp.es/recursos/post/Fundamentos-de-
SQL-Agrupaciones-y-funciones-de-agregacion.aspx

HScripts.com. (s.f.). Obtenido de https://www.hscripts.com/es/tutoriales/mysql/fecha-hora-


functiones.php

MySQL. (s.f.). Obtenido de http://download.nust.na/pub6/mysql/doc/refman/5.0/es/string-


functions.html

TUTORIALESPROGRAMACIONYA. (s.f.). Obtenido de


https://www.tutorialesprogramacionya.com/mysqlya/temarios/descripcion.php?cod=76&
punto=26&inicio=

También podría gustarte