关于PostgreSql的指定中文排序问题

Postgresql之前用的比较少,最近遇到的一个排序问题,中文排序与Oracle还有点不同。

现在说明下在指定中的情况下排序,如有一个情况是这样,需要按照“浙江”,“杭州”,“绍兴”,“宁波”这样的顺序排序地市名称,当然方法有很多种,比如给定每条数据添加一个order_id,即排序字段等,我这边说的是,不做表的额外操作,只是在sql中指定顺序,测试情况如下:

创建表和插入数据

create table users(organization varchar(100),name_ varchar(100));


insert into users values('浙江','a');
insert into users values('绍兴','a');
insert into users values('杭州','a');
insert into users values('宁波','a');


单纯排序

select * from users order by organization

输出结果为杭州,宁波,绍兴,浙江

输出的结果与要求不符,那么

select * from users order by (organization='浙江',organization='杭州',organization='绍兴',organization='宁波') desc

就符合要求了

相关文章

项目需要,有个数据需要导入,拿到手一开始以为是mysql,结果...
本文小编为大家详细介绍“怎么查看PostgreSQL数据库中所有表...
错误现象问题原因这是在远程连接时pg_hba.conf文件没有配置正...
因本地资源有限,在公共测试环境搭建了PGsql环境,从数据库本...
wamp 环境 这个提示就是说你的版本低于10了。 先打印ph...
psycopg2.OperationalError: SSL SYSCALL error: EOF detect...