我是 postrges 的新手,想对 varchar 类型的列进行排序。想用下面的例子来解释这个问题:
表名:testsorting
order name
1 b
2 B
3 a
4 a1
5 a11
6 a2
7 a20
8 A
9 a19
区分大小写的排序(在 postgres 中是默认的)给出:
select name from testsorting order by name;
A
B
a
a1
a11
a19
a2
a20
b
不区分大小写的排序给出:
按 UPPER(name) 从测试排序顺序中选择名称;
A
a
a1
a11
a19
a2
a20
B
b
如何在 postgres 中进行字母数字大小写不敏感排序以获得以下顺序:
a
A
a1
a2
a11
a19
a20
b
B
我不介意大写或小写字母的顺序,但顺序应该是“aAbB”或“AaBb”,而不应该是“ABab”
如果您在 postgres 中对此有任何解决方案,请提出建议。