-- Funciones específicas de Mysql -- Funciones de cadena, de fecha, aritméticas,.... -- Funciones de cadena -- CONCAT para concatenar cadenas select CONCAT(first_name,' ',last_name) nombre from actor; -- Cuidado porque al concatenar un valor nulo con valor válidos el nulo 'se contagia' -- es decir, concat(cualquier-valor,null)-->null select CONCAT(address,' - ',address2,' (',postal_code,')') direccion from address; -- Subcadenas SUBSTRING(posicion, longitud) -- Ojo, las cadenas empiezan en 1 select substring(first_name,2,3) from actor; -- Podemos usar valores negativos select substring(first_name,-3,1) from actor; -- Por ejemplo la primera letra: select substring(first_name,1,1) from actor; -- La última select substring(first_name,-1,1) from actor; -- Las funciones las pudo utilizar en el select o en otras partes de la consulta -- Por ejemplo: actores cuyo nombre acaba en 'E' -- El substring lo utilizo en el where select * from actor where substring(first_name,-1,1)='e'; -- Actores ordenador por la última letra del nombre select * from actor order by substring(first_name,-1,1); -- longitud de ua cadena select length(first_name) longitud from actor; -- Paises ordenados por la longitud de su nombre select * from country order by length(country); -- Pasar a mayúsculas o minúsculas select upper(country) mayusculas,lower(country) minusculas from country; -- Puedo reemplazar una cadena por otra select replace(country,'a','@') pais from country; -- trim nos elimina espacios del principio y del fin -- Esto es super útil en la vida real porque ni os imagináis la cantidad de -- espacios basura que hay en las bases de datos select trim(' asdasd ') foo; -- Yo muchas veces hago cosas como esta -- Esto me limpia de espacios ese campo update actor set first_name=trim(first_name); -- Concatena con el reparador que yo le ponga select concat_ws(' ',first_name,last_name) nombre from actor; -- Es muy útil cuando quiero juntar varios campos usando el mismo separador select concat_ws(' ',address,address2,district,postal_code) direccion from address;