oracle中的NLS_INITCAP、NLS_LOWER、NLS_UPPER函数

oracle中有NLS_INITCAP、NLS_LOWER、NLS_UPPER三个函数
这三个函数中都有个nls_param参数
nls_param可以等于哪些值,资料上有个XGERMAN,还有哪些呀
另外这个参数有什么用啊
最新回答
青山一叙

2025-03-29 07:52:52

SCHINESE_RADICAL_M 按照部首(第一顺序)、笔划(第二顺序)排序

SCHINESE_STROKE_M 按照笔划(第一顺序)、部首(第二顺序)排序

SCHINESE_PINYIN_M 按照拼音排序
排序用
比如select nls_initcap('百度知道', 'nls_sort= SCHINESE_STROKE_M')
from dual;
追问
你说的这应该是 NLS_SORT 这个函数的吧?
追答
这个函数的参数就是设置一个nls_sort的参数
追问
select nls_initcap(t.user_name, 'nls_sort= SCHINESE_PINYIN_M')   from sm_user t; 
如果是这样的语句
查询结果是会按t.user_name列的拼音排序吗》
追答
肯定不会 这个函数是处理行级数据的 第一个字母大写而已
追问
那么对于nls_initcap函数增加'nls_sort= SCHINESE_PINYIN_M'有什么作用呢?
追答
找找资料吧 嘿嘿 我也不是很清楚
追问
谢谢~~~~
琉璃水色

2025-03-29 13:48:05

nlsparams指定不用于该会话缺省值的不同排序序列,如果不指定此参数,那么NLS_INITCAP、NLS_LOWER、NLS_UPPER三个函数分别跟INITCAP、LOWER、UPPER三个函数的功能相同了。
追问
还是以上面的那个例子为准吧
select nls_initcap(t.user_name, 'nls_sort= SCHINESE_PINYIN_M') from sm_user t;
里面的'nls_sort= SCHINESE_PINYIN_M'会有什么效果
如果不增加的话,查询结果有什么不一样?
或者说以select不能体现nls_initcap函数中'nls_sort= SCHINESE_PINYIN_M'的效果?
还是怎么滴?
谢谢
追答
这个参数我也不知道了
追问
谢谢~~~~