LEFT
La función LEFT extrae un número específico de caracteres desde el inicio (izquierda) de una cadena.
Sintaxis
LEFT(cadena, longitud)cadena: la cadena de origenlongitud: número de caracteres a extraer
Ejemplo básico
SELECT LEFT('MySQL Tutorial', 5) AS resultado;| resultado |
|---|
| MySQL |
SELECT LEFT('Hola mundo', 4) AS resultado;| resultado |
|---|
| Hola |
Iniciales de productos
SELECT nombre, LEFT(nombre, 1) AS inicial
FROM productos
LIMIT 5;| nombre | inicial |
|---|---|
| iPhone 15 Pro | i |
| MacBook Air M2 | M |
| AirPods Pro | A |
| iPad Air | i |
| Apple Watch Series 9 | A |
Primeras palabras de nombres
SELECT nombre, LEFT(nombre, 6) AS prefijo
FROM productos
LIMIT 5;| nombre | prefijo |
|---|---|
| iPhone 15 Pro | iPhone |
| MacBook Air M2 | MacBoo |
| AirPods Pro | AirPod |
| iPad Air | iPad A |
| Apple Watch Series 9 | Apple |
Códigos de categoría
SELECT nombre, UPPER(LEFT(nombre, 3)) AS codigo
FROM categorias;| nombre | codigo |
|---|---|
| Electrónica | ELE |
| Accesorios electrónicos | ACC |
| Hogar inteligente | HOG |
| Audio | AUD |
| Fotografía | FOT |
Agrupar por inicial
SELECT LEFT(nombre, 1) AS inicial, COUNT(*) AS total
FROM productos
GROUP BY inicial
ORDER BY total DESC;LEFT con longitud mayor que la cadena
Si pides más caracteres de los que tiene la cadena, devuelve la cadena completa:
SELECT LEFT('Hola', 100) AS resultado;| resultado |
|---|
| Hola |
LEFT con NULL
SELECT LEFT(NULL, 5) AS resultado;| resultado |
|---|
| NULL |
Ocultar datos sensibles
SELECT
nombre,
CONCAT(LEFT(email, 3), '***@***') AS email_oculto
FROM clientes
LIMIT 3;| nombre | email_oculto |
|---|---|
| María | mar***@*** |
| Carlos | car***@*** |
| Laura | lau***@*** |
En el siguiente artículo veremos RIGHT para extraer caracteres desde la derecha.
Escrito por Eduardo Lázaro
