Pone en mayúsculas la primera letra de cada palabra en una cadena especificada. INITCAP admite caracteres multibyte UTF-8 de hasta un máximo de cuatro bytes por carácter.
Sintaxis
INITCAP(string)
Argumento
- string
-
Una cadena
CHAR
, una cadenaVARCHAR
o una expresión que se evalúe de forma implícita como un tipoCHAR
oVARCHAR
.
Tipo de retorno
VARCHAR
Notas de uso
La función INITCAP hace que la primera letra de cada palabra en una cadena esté en mayúsculas y todas las letras subsiguientes (o hacia la izquierda) estén en minúsculas. Por lo tanto, es importante comprender qué caracteres (que no sean espacios) funcionan como separadores de palabras. Un carácter separador de palabra es cualquier carácter no alfanumérico, incluidos los signos de puntuación, los símbolos y los caracteres de control. Todos los siguientes caracteres son separadores de palabras:
! " # $ % & ' ( ) * + , - . / : ; < = > ? @ [ \ ] ^ _ ` { | } ~
Tabulaciones, caracteres en línea nueva, fuentes de forma, fuentes de línea y saltos de línea también son separadores de palabra.
Ejemplos
En los siguientes ejemplos se utilizan datos de las tablas CATEGORY y USERS en la base de datos de ejemplo TICKIT. Para obtener más información, consulte Base de datos de muestra.
Para escribir en mayúsculas las iniciales de cada palabra en la columna CATDESC, use el siguiente ejemplo.
SELECT catid, catdesc, INITCAP(catdesc)
FROM category
ORDER BY 1, 2, 3;
+-------+--------------------------------------------+--------------------------------------------+
| catid | catdesc | initcap |
+-------+--------------------------------------------+--------------------------------------------+
| 1 | Major League Baseball | Major League Baseball |
| 2 | National Hockey League | National Hockey League |
| 3 | National Football League | National Football League |
| 4 | National Basketball Association | National Basketball Association |
| 5 | Major League Soccer | Major League Soccer |
| 6 | Musical theatre | Musical Theatre |
| 7 | All non-musical theatre | All Non-Musical Theatre |
| 8 | All opera and light opera | All Opera And Light Opera |
| 9 | All rock and pop music concerts | All Rock And Pop Music Concerts |
| 10 | All jazz singers and bands | All Jazz Singers And Bands |
| 11 | All symphony, concerto, and choir concerts | All Symphony, Concerto, And Choir Concerts |
+-------+--------------------------------------------+--------------------------------------------+
Para mostrar que la función INITCAP no preserva caracteres en mayúsculas donde no comienzan palabras, use el siguiente ejemplo. Por ejemplo, la cadena MLB
se convierte en Mlb
.
SELECT INITCAP(catname)
FROM category
ORDER BY catname;
+-----------+
| initcap |
+-----------+
| Classical |
| Jazz |
| Mlb |
| Mls |
| Musicals |
| Nba |
| Nfl |
| Nhl |
| Opera |
| Plays |
| Pop |
+-----------+
Para mostrar que los caracteres no alfanuméricos distintos de los espacios funcionan como separadores de palabras, utilice el siguiente ejemplo. Se escribirán en mayúscula varias letras de cada cadena.
SELECT email, INITCAP(email)
FROM users
ORDER BY userid DESC LIMIT 5;
+------------------------------------+------------------------------------+
| email | initcap |
+------------------------------------+------------------------------------+
| urna.Ut@egetdictumplacerat.edu | Urna.Ut@Egetdictumplacerat.Edu |
| nibh.enim@egestas.ca | Nibh.Enim@Egestas.Ca |
| in@Donecat.ca | In@Donecat.Ca |
| sodales@blanditviverraDonec.ca | Sodales@Blanditviverradonec.Ca |
| sociis.natoque.penatibus@vitae.org | Sociis.Natoque.Penatibus@Vitae.Org |
+------------------------------------+------------------------------------+