🙏 Realmente necesitamos su apoyo. Necesitamos financiamiento para continuar nuestra misión: publicar nuevas lecciones y mejorar la plataforma. Si puede, por favor apoye el proyecto con una donación. Ayude al proyecto ahora →
Código SQL copiado al portapapeles

Lesión 3.1 · Tiempo de lectura: ~8 min

En esta lección, explorarás el tema de las funciones SQL y aprenderás cómo las funciones incorporadas transforman datos directamente dentro de una consulta. Cubriremos la sintaxis básica, las categorías de funciones y ejemplos prácticos basados en Sakila. Al final, podrás aplicar funciones SQL con confianza en flujos de trabajo de análisis reales.

Funciones SQL Incorporadas

En lecciones anteriores, aprendiste cómo seleccionar, filtrar y ordenar filas. El siguiente paso es calcular y transformar valores dentro de la consulta sin procesamiento adicional en la aplicación.

Aquí es donde las funciones SQL incorporadas son más útiles: hacen que las consultas sean más expresivas, reducen la lógica repetitiva y aceleran la preparación de informes.

Funciones SQL Incorporadas


Qué Son las Funciones SQL Incorporadas

Una función SQL incorporada es una operación predefinida proporcionada por el SGBD. Acepta argumentos y devuelve un nuevo valor, como texto, un número, una fecha o un resultado booleano.

Las funciones se utilizan cuando necesitas:

  • normalizar valores de texto;
  • realizar cálculos en SQL;
  • extraer partes de cadenas o fechas;
  • convertir valores entre tipos de datos.

Sintaxis Básica

FUNCTION_NAME(argument1, argument2, ...)

Donde:

  • FUNCTION_NAME es el nombre de la función;
  • argument1, argument2, ... son columnas, literales o resultados de otras funciones.

Ejemplo de llamada a función simple:

SELECT
	UPPER(first_name) AS upper_name
FROM customer
LIMIT 5;

Resultado: cada valor de first_name se convierte a mayúsculas.

También puedes usar llamadas a funciones anidadas, donde una función se pasa como argumento a otra.

Ejemplo de llamada a función anidada:

SELECT
	UPPER(TRIM(first_name)) AS normalized_name
FROM customer
LIMIT 5;

Resultado: se eliminan los espacios en blanco al principio y al final, luego el nombre se convierte a mayúsculas.


Dónde Se Usan Comúnmente las Funciones

Funciones en SELECT

En SELECT, las funciones ayudan a dar forma a la salida.

SELECT
	customer_id,
	CONCAT(first_name, ' ', last_name) AS full_name,
	UPPER(email) AS email_upper
FROM customer
LIMIT 10;

Nota: este ejemplo utiliza solo una tabla y muestra cómo las funciones pueden formatear columnas de salida directamente en SELECT.

Funciones en WHERE

En WHERE, las funciones apoyan el filtrado basado en condiciones calculadas.

SELECT
	title,
	rental_duration
FROM film
WHERE LENGTH(title) >= 15
  AND ABS(rental_duration - 5) <= 2
ORDER BY title;

Resultado: devuelve películas con títulos más largos y duraciones de alquiler cercanas a 5 días.


Principales Tipos de Funciones SQL

Funciones de cadena

Ejemplos: UPPER, LOWER, TRIM, SUBSTRING, CONCAT.

Se utilizan para limpiar y formatear campos de texto.

Funciones matemáticas

Ejemplos: ROUND, ABS, CEILING, FLOOR, MOD.

Se utilizan para cálculos, redondeos y control numérico.

Funciones de fecha y hora

Ejemplos: NOW, CURRENT_DATE, YEAR, MONTH, DATE_ADD, DATEDIFF.

Se utilizan para análisis basados en tiempo y cálculos de intervalos.

Funciones de conversión de tipo

Ejemplos: CAST, CONVERT.

Se utilizan cuando los valores deben ser convertidos explícitamente al tipo correcto.


Recomendaciones Prácticas

  • Siempre verifica el comportamiento de las funciones en tu SGBD: la sintaxis y los detalles pueden diferir.
  • Usa alias AS para que las columnas calculadas sean más fáciles de leer.
  • Ten en cuenta los valores NULL, ya que los resultados de las funciones pueden volverse NULL.
  • Evita funciones profundamente anidadas en una sola consulta; divide la lógica compleja en pasos.

Conclusiones clave de esta lección:

  • Las funciones SQL incorporadas te permiten procesar datos directamente en las consultas.
  • Las funciones en SELECT dan forma a la salida, mientras que las funciones en WHERE mejoran la precisión del filtrado.
  • Las funciones de cadena, matemáticas, de fecha/hora y de conversión cubren la mayoría de las necesidades básicas.
  • El manejo correcto de los tipos de datos y de NULL es esencial para obtener resultados predecibles.
  • El uso adecuado de funciones hace que las consultas SQL sean más cortas, claras y útiles para el análisis.

Preguntas de Entrevista

¿Qué es una función SQL incorporada y por qué es útil?

Una función SQL incorporada es una operación predefinida proporcionada por el SGBD. Es útil porque te permite transformar, calcular y formatear datos directamente en una consulta.

¿Por qué se utilizan comúnmente las funciones SQL tanto en SELECT como en WHERE?

En SELECT, las funciones ayudan a formatear o calcular valores de salida. En WHERE, ayudan a filtrar filas utilizando condiciones calculadas.

¿Qué es una llamada a función anidada y cuándo deberías usarla?

Una llamada a función anidada significa pasar el resultado de una función a otra función. Úsala cuando los datos necesiten múltiples pasos de transformación, por ejemplo UPPER(TRIM(first_name)).

En la próxima lección, nos enfocaremos en las funciones de cadena SQL y aprenderemos cómo limpiar y transformar datos de texto de manera efectiva.