6.2.7 带排序参数的字母大小写转换函数
1)NLS_INITCAP(char[,nlsparam])函数。将指定参数的第一个字母转换成大写。nlsparam参数为可选参数,其设置可以到NLS_DATABASE_PARAMETERS表中查询。这两个参数类型可以是CHAR、VARCHAR2、NCHAR、NVARCHAR2。如果该函数没有nlsparam参数,则它和INITCAP函数一样。示例脚本如下:
SELECT NLS_INITCAP('a test'),NLS_INITCAP('my test','NLS_SORT=SCHINESE_STROKE_M')FROM DUAL;
【执行效果】
执行效果见图6.21。
图 6.21 NLS_INITCAP函数
其中'NLS_SORT=SCHINESE_STROKE_M'指按笔画、部首排序。
2)NLS_UPPER(char[,nlsparam])函数。将指定参数变成大写。nlsparam参数同NLS_INITCAP函数设置。示例脚本如下:
SELECT NLS_UPPER('this is a test','NLS_SORT=SCHINESE_PINYIN_M')FROM DUAL;
【执行效果】
执行效果见图6.22。
图 6.22 NLS_UPPER函数
参数中'NLS_SORT=SCHINESE_PINYIN_M'表示按拼音排序。
3)NLS_LOWER(char[,nlsparam])函数。将指定参数转换成小写。nlsparam参数同NLS_INITCAP函数设置。示例脚本如下:
SELECT NLS_LOWER('ABC','NLS_SORT=XGerman'),
NLS_LOWER('THIS IS A TEST','NLS_SORT=XGerman')
FROM DUAL;
【执行效果】
执行效果见图6.23。
图 6.23 NLS_LOWER函数