Welcome 微信登录

首页 / 数据库 / MySQL / PostgreSQL大小写排序问题

在PostgreSQL中创建如下表并插入如下数据CREATE TABLE "TTT" (   ID varchar(32) PRIMARY KEY NOT NULL,   NAME varchar(128) NOT NULL);CREATE UNIQUE INDEX TTT_NAME_IDX ON "TTT"(NAME);insert into "TTT" values("1" , "A");insert into "TTT" values("2" , "a");insert into "TTT" values("3" , "B");insert into "TTT" values("4" , "b");此时如果执行select * from "TTT" order by NAME;将会得到以下结果 id | name ----------+------------ 2  | a 1  | A 4  | b 3  | B(4 rows)这里我们期望name的排序是先按大写字母排序,然后再按照小写字母排序。 查了一下资料,可以通过如下操作来解决以上排序问题1. 首先备份数据库配置文件和数据文件(最好导出数据),默认情况下就是/var/lib/pgsql/data目录下所有东东2. $ sudo /etc/init.d/postgresql stop3. $ sudo su - postgres   # initdb --lc-collate=C4. $ sudo /etc/init.d/postgresql start5. 再次执行以下查询select * from "TTT" order by NAME;结果如下: id | name ----+------ 1  | A 3  | B 2  | a 4  | b(4 rows)设置MySQL设置字符集和排序方式PostgreSQL一些简单问题以及解决办法相关资讯      PostgreSQL 
  • Ubuntu 16.04 下安装 PostgreSQL   (08月14日)
  • PostgreSQL 发布全系安全更新  (02月12日)
  • 使用pg_basebackup搭建PostgreSQL  (12/30/2015 09:00:29)
  • Linux下RPM包方式安装PostgreSQL  (03月04日)
  • PostgreSQL9.5新特性之行级安全性  (01月19日)
  • 利用pgpool实现PostgreSQL的高可用  (12/30/2015 08:54:36)
本文评论 查看全部评论 (0)
表情: 姓名: 字数