postgresql – 字符串排序顺序(LC_COLLATE和LC_CTYPE)
显然,自版本8.4起,PostgreSQL允许每个数据库使用不同的语言环境
所以我去了文档阅读有关语言环境的内容(http://www. postgresql.org/docs/8.4/static/locale.html). 字符串排序顺序是我特别感兴趣的(我希望字符串排序为’A a b c D d’而不是’A B C … Z a b c’). 问题1:创建数据库时是否只需要设置LC_COLLATE(字符串排序顺序)? 我还读到了关于LC_CTYPE(字符分类(什么是字母?它的大写等价?)) 问题2:有人可以解释这意味着什么吗? 解决方法
您描述的排序顺序是大多数语言环境中的标准.
试试吧: SELECT regexp_split_to_table('D d a A c b',' ') ORDER BY 1; 使用initdb初始化数据库集群时,可以使用–locale = some_locale选择语言环境.就我而言,它是–locale = de_AT.UTF-8.如果未指定任何语言环境继承自环境 – 将使用您当前的系统区域设置. 群集的模板数据库将设置为该区域设置.创建新数据库时,它会从模板继承设置.通常你不必担心任何事情,这一切都有效. 阅读CREATE DATABASE章节了解更多信息. 在PostgreSQL 9.1或更高版本中,有collation support允许更灵活地使用归类:
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |