SQLite 默认是不支持中文按拼音排序,但是可以通过引入一个 SQLite 扩展模块ICU实现中文按拼音排序,我之前试过是可行的。
1、你先去 github下载ICU 模块,必须选择适合你系统的版本
2、 把ICU 模块文件,例如 sqlite3_icu.dll 或 sqlite3_icu.so复制到你的项目目录下面
3、在SQLite 中加载 ICU
[Asm] 纯文本查看 复制代码 SELECT load_extension('./sqlite3_icu.dll');
4、创建一个表并插入数据
[Asm] 纯文本查看 复制代码 CREATE TABLE mytable (id INTEGER PRIMARY KEY, name TEXT);
INSERT INTO mytable (name) VALUES ('张三'), ('李四'), ('王五');
5、使用 ICU的 COLLATE 子句来指定排序规则
[Asm] 纯文本查看 复制代码 SELECT * FROM mytable ORDER BY name COLLATE "UNICODE COLLATION RULES";
这样可以实现按照中文拼音排序
|