¿Estás comenzando tu viaje en el mundo de las bases de datos y te preguntas cómo realizar consultas básicas en MySQL? ¡Estás en el lugar correcto! MySQL es uno de los sistemas de gestión de bases de datos más populares y utilizados en el mundo, y aprender a manejarlo es esencial para cualquier desarrollador o analista de datos.
En esta guía, te enseñaremos los conceptos fundamentales y las consultas básicas que necesitas para empezar a trabajar con MySQL de manera efectiva. A lo largo de mi vida como programador, me he encontrado con bases de datos muy grandes que venían de otros sistemas y te interesa mantener los datos. Sin embargo, a menudo te encuentras con tablas cuyos registros están en minúscula y otros en mayúscula, que tienen espacios vacíos a la derecha, entre otras cosas. Hoy os traigo unas cuantas consultas de MySQL o MariaDB que os servirán mucho, especialmente si eres un principiante.
Además, te proporcionaremos ejemplos prácticos y consejos útiles para que puedas aplicar lo aprendido en situaciones reales. ¡Prepárate para descubrir cómo estas consultas pueden transformar tu manera de trabajar con MySQL!
Damos como supuesto que ya sabes hacer lo básico que es hacer un Select, Insert o un Update, si no te dejo este enlace para ver cómo se hace.
Eliminar espacio en blanco
En muchas ocasiones, estás comparando registros que aparentemente son iguales, pero MySQL dice que no lo son. Este es uno de los problemas más complejos de ver a simple vista, ya que algunos registros pueden tener un espacio vacío delante o detrás. Para solucionar esto, usa la siguiente consulta:
UPDATE tabla SET nombre_campo = TRIM(nombre_campo);
Homogeneizar datos
Este es un clásico: cuando se han introducido los datos, se ha hecho en minúscula, en mayúscula o con la primera letra en mayúscula. Para esto, os dejo unas consultas que os ayudarán.
Pasar registros a mayúscula
UPDATE tabla SET nombre_campo = UPPER(nombre_campo)
Pasar registros a minúscula
UPDATE tabla SET nombre_campo = LOWER(nombre_campo)
Primera letra en mayúscula
UPDATE tabla SET nombre_campo = CONCAT(UCASE(LEFT(nombre_campo, 1)), LCASE(SUBSTRING(nombre_campo, 2)))
Concatenar (CONCAT) campos
La función CONCAT()
de MySQL permite unir dos o más cadenas en una sola. Es especialmente útil para generar una cadena unificada a partir de múltiples campos o valores.
SELECT nombre_campo, nombre_campo_2, CONCAT(nombre_campo, ' ' ,nombre_campo_2) AS 'Nombre_nuevo_campo' FROM tabla;
Reemplazar (REPLACE) texto dentro de un string
La sentencia REPLACE
se emplea para garantizar que una fila sea reemplazada si se encuentra una clave duplicada. Es particularmente útil para mantener registros únicos al insertar datos.
SELECT email, REPLACE(email, 'gmail', 'outlook') AS 'E-mail reemplazado' FROM empleados;
Para trabajar con fechas
En la mayoría de las tablas siempre tenemos fechas y necesitamos hacer cálculos para sacar edades de personas, fechas de caducidad, entre otras consultas. Aquí te dejo una serie de comandos para hacer este tipo de cálculos.
Formatear fechas (DATE_FORMAT
):
Permite formatear una fecha en un formato específico.
SELECT DATE_FORMAT('2023-12-31', '%Y-%m-%d');
Obtener una fecha específica (CURDATE
):
Permite obtener solo el día, mes y año de una fecha.
SELECT CURDATE();
SELECT nombre_campo, campo_fecha FROM tabla WHERE campo_fecha = CURDATE();
Obtener la fecha y hora actuales (NOW
):
Devuelve la fecha y hora actuales en el formato YYYY-MM-DD HH:MM:SS
.
SELECT NOW() AS fecha_y_hora_actual;
Comandos para sumar o restar tiempo:
Sumar DATE_ADD
suma valores de tiempo a un valor de fecha.
SELECT DATE_ADD(NOW(), INTERVAL 20 DAY);
Restar DATE_SUB
resta un valor de tiempo a un valor de fecha.
SELECT DATE_SUB(NOW(), INTERVAL 8 YEAR);
Calcular fechas DATEDIFF
calcula los días entre dos fechas u horas.
SELECT DATEDIFF('1997-12-31 23:59:59', '2025-12-30');
CURTIME
selecciona la hora actual.
SELECT CURTIME();
Filtrar el Resultado de una Consulta entre Fechas (BETWEEN
)
BETWEEN
se emplea para especificar un rango de valores con el fin de filtrar datos en consultas. Puede aplicarse a datos numéricos, de fecha o textuales.
SELECT nombre_campo, nombre_campo_2 FROM tabla WHERE nombre_columna BETWEEN valor1 AND valor2;
Operadores de comparación
Otra de las funciones importantes son los operadores de comparación, te dejo una lista para que los conozcas.
Operador | Descripción |
= | Igual |
<=> | Igual (Compara con seguridad valores NULL) |
<> | Diferente |
!= | Diferente |
> | Mayor Que |
>= | Mayor o Igual Que |
< | Menor Que |
<= | Menor o Igual Que |
IN ( ) | Valores que Coinciden en una Lista |
NOT | Negar una Condición |
BETWEEN | Valores en un Rango (incluye los extremos) |
IS NULL | Verifica si el Valor es NULL |
IS NOT NULL | Verifica si el Valor es diferente de NULL |
LIKE | Definir un patrón de búsqueda y utiliza % y _ |
EXISTS | La condición se cumple si la subconsulta devuelve al menos una fila |
¿Te ha resultado útil estas consultas para MySQL? ¿Tienes alguna sugerencia o pregunta? ¡Déjanos tu comentario abajo y comparte tu experiencia! Nos encantaría saber cómo estas consultas ha mejorado tu flujo de trabajo y qué otras consultas te gustaría ver en futuras publicaciones