Amazon Redshift
数据库开发人员指南 (API Version 2012-12-01)
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。请点击 Amazon AWS 入门,可查看中国地区的具体差异

INITCAP 函数

将指定字符串中的每个单词的第一个字母大写。INITCAP 支持 UTF-8 多字节字符,并且每个字符最多可以有 4 个字节。

语法

Copy
INITCAP(string)

参数

string

输入参数为 CHAR 或 VARCHAR 字符串。

返回类型

INITCAP 函数返回 VARCHAR 字符串。

使用说明

INITCAP 函数会将字符串中的每个单词的第一个字母大写,并将所有后续字母小写。因此,务必了解哪些字符(空格字符除外)充当分隔符。文字分隔符 字符是任何非字母数字字符,包括标点符号、普通符号和控制字符。所有以下字符都是文字分隔符:

Copy
! " # $ % & ' ( ) * + , - . / : ; < = > ? @ [ \ ] ^ _ ` { | } ~

制表符、换行符、换页符和回车也是文字分隔符。

示例

以下示例将 CATDESC 列中的每个单词的首字母大写:

Copy
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 (11 rows)

以下示例显示了在大写字符不作为单词的首字母时 INITCAP 函数不会保留这些字符。例如,MLB 变成 Mlb。

Copy
select initcap(catname) from category order by catname; initcap ----------- Classical Jazz Mlb Mls Musicals Nba Nfl Nhl Opera Plays Pop (11 rows)

以下示例显示了空格以外的非字母数字字符充当文字分隔符,导致大写字符应用于每个字符串中的多个字母:

Copy
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 (5 rows)