类别:

:doc:`/sql-reference/functions-string`(大小写转化)

INITCAP

返回输入字符串,其中每个单词的第一个字母为大写,后续字母为小写。

语法

INITCAP( <expr> [ , '<delimiters>' ] )
Copy

实参

expr

字符串表达式。

'delimiters'

一个或多个字符的字符串, INITCAP 将其用作输入表达式中单词的分隔符:

  • 如果未指定 delimiters,则输入表达式中的以下任何字符都将被视为单词分隔符:

    <whitespace> ! ? @ " ^ # $ & ~ _ , . : ; + - * % / | \ [ ] ( ) { } < >
    
  • 如果指定了 delimiters,则指定的值将替换上面列出的所有字符。

支持任何 UTF-8 字符,包括空格字符,并且区分大小写。

必须放在单引号内,例如 ', '`(本例中的分隔符是 :code:,` 和空格)。

当指定为空字符串时(即,''),INITCAP 忽略输入表达式中的所有分隔符,包括空格字符。输入表达式被视为单个连续的单词。输出结果是一个字符串,其中第一个字符大写(如果第一个字符是字母),所有其他字母都为小写。

返回

此函数返回 VARCHAR 类型的值。

排序规则详细信息

Arguments with collation specifications currently aren't supported.

示例

此示例使用默认分隔符提供不同语言的各种输出:

SELECT v, INITCAP(v) FROM testinit;
Copy
+---------------------------------+---------------------------------+
| C1                              | INITCAP(C1)                     |
|---------------------------------+---------------------------------|
| The Quick Gray Fox              | The Quick Gray Fox              |
| the sky is blue                 | The Sky Is Blue                 |
| OVER the River 2 Times          | Over The River 2 Times          |
| WE CAN HANDLE THIS              | We Can Handle This              |
| HelL0_hi+therE                  | Hell0_Hi+There                  |
| νησί του ποταμού                | Νησί Του Ποταμού                |
| ÄäÖößÜü                         | Ääöößüü                         |
| Hi,are?you!there                | Hi,Are?You!There                |
| to je dobré                     | To Je Dobré                     |
| ÉéÀàè]çÂâ ÊêÎÔô ÛûËÏ ïÜŸÇç ŒœÆæ | Ééààè]Çââ Êêîôô Ûûëï Ïüÿçç Œœææ |
| ĄąĆ ćĘęŁ łŃńÓ óŚśŹźŻż           | Ąąć Ćęęł Łńńó Óśśźźżż           |
| АаБб ВвГгД дЕеЁёЖ жЗзИиЙй       | Аабб Ввггд Дееёёж Жззиийй       |
| ХхЦц ЧчШш ЩщЪъ ЫыЬь ЭэЮ юЯя     | Ххцц Ччшш Щщъъ Ыыьь Ээю Юяя     |
| NULL                            | NULL                            |
+---------------------------------+---------------------------------+

这些示例使用 delimiters 实参指定分隔符:

SELECT INITCAP('this is the new Frame+work', '') AS initcap_result;
Copy
+----------------------------+
| INITCAP_RESULT             |
|----------------------------|
| This is the new frame+work |
+----------------------------+
SELECT INITCAP('iqamqinterestedqinqthisqtopic','q') AS initcap_result;
Copy
+-------------------------------+
| INITCAP_RESULT                |
|-------------------------------|
| IqAmqInterestedqInqThisqTopic |
+-------------------------------+
SELECT INITCAP('lion☂fRog potato⨊cLoUD', '⨊☂') AS initcap_result;
Copy
+------------------------+
| INITCAP_RESULT         |
|------------------------|
| Lion☂Frog potato⨊Cloud |
+------------------------+
SELECT INITCAP('apple is僉sweetandballIsROUND', '僉a b') AS initcap_result;
Copy
+-------------------------------+
| INITCAP_RESULT                |
|-------------------------------|
| aPple Is僉SweetaNdbaLlisround |
+-------------------------------+
语言: 中文