我对包含波兰字符(如 ą、Ą)的 varchar 进行排序时遇到问题。
例如,我们有以下名称:
Aaaa
BBcvx
Ąccc
Ddde
ądcc
以下查询:
select * from something order by lower(name);
返回结果如下:
Aaaa
BBcvx
Ddde
ądcc
Ąccc
如您所见,波兰语字符被忽略并放在最后。它应该是:
Aaaa
ądcc
Ąccc
BBcvx
Ddde
可能是什么问题?数据库编码?我的是:
SELECT * FROM NLS_DATABASE_PARAMETERS WHERE PARAMETER = 'NLS_CHARACTERSET';
Result:
EE8MSWIN1250
可以在不更改数据库编码的情况下解决这个问题吗?