尽管使用的排序规则显然相同,但我对带有变音符号的项目得到了不同的排序结果。
因此,在我的 mac 盒中安装Postgress.app进行开发后,我创建了下表:
create table names (
id int primary key,
name varchar
)
Run Code Online (Sandbox Code Playgroud)
然后插入一些值
insert into names values (1, "Francisco");
insert into names values (2, "Ana");
insert into names values (3, "Ágata");
Run Code Online (Sandbox Code Playgroud)
然后像这样查询它们:
select name from names order by name;
Run Code Online (Sandbox Code Playgroud)
我得到了一个错误的排序顺序,如下所示:
Ana
Francisco
Ágata
Run Code Online (Sandbox Code Playgroud)
我可以确认
select datname,
datcollate
from pg_database;
Run Code Online (Sandbox Code Playgroud)
的datcollate所有数据库值en_US.UTF-8。
为了帮助我调试这个问题,我快速启动了一个具有相同数据、查询和整理的 RDS 实例,但这次我得到了正确的预期排序顺序:
Ágata
Ana
Francisco
Run Code Online (Sandbox Code Playgroud)
我在这里缺少什么,如何在我的开发框中配置 postgres 以使其按预期运行?