Função INITCAP
Capitaliza a primeira letra de cada palavra de uma string especificada. INITCAP é compatível com caracteres UTF-8 multibyte, até o máximo de quatro bytes por caractere.
Sintaxe
INITCAP(string)
Argumento
- string
-
Uma string
CHAR
, uma stringVARCHAR
ou uma expressão que é avaliada implicitamente como um tipoCHAR
ouVARCHAR
.
Tipo de retorno
VARCHAR
Observações de uso
A função INITCAP transforma em maiúscula a primeira letra de cada palavra em uma string e quaisquer letras subsequentes são transformadas (ou deixadas) em minúsculo. Portanto, é importante compreender quais caracteres (além de caracteres de espaço) funcionam como separadores de palavras. Um caractere separador de palavras é qualquer caractere não alfanumérico, incluindo marcas de pontuação, símbolos e caracteres de controle. Todos os seguintes caracteres são separadores de palavras:
! " # $ % & ' ( ) * + , - . / : ; < = > ? @ [ \ ] ^ _ ` { | } ~
Guias, caracteres de nova linha, alimentações de formulário e retornos de carro também são separadores de palavras.
Exemplos
Os exemplos a seguir usam dados da tabela CATEGORY e USERS do banco de dados de amostra TICKIT. Para ter mais informações, consulte Banco de dados de exemplo.
Para capitalizar as iniciais de cada palavra na coluna CATDESC, use o exemplo a seguir.
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 a função INITCAP não preserva caracteres maiúsculos quando eles não começam palavras, use o exemplo a seguir. Por exemplo, a string MLB
torna-se Mlb
.
SELECT INITCAP(catname)
FROM category
ORDER BY catname;
+-----------+
| initcap |
+-----------+
| Classical |
| Jazz |
| Mlb |
| Mls |
| Musicals |
| Nba |
| Nfl |
| Nhl |
| Opera |
| Plays |
| Pop |
+-----------+
Para mostrar que caracteres não alfanuméricos, exceto espaços, funcionam como separadores de palavras, use o exemplo a seguir. Várias letras em cada string serão maiúsculas.
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 |
+------------------------------------+------------------------------------+