SQLite排序TEXT字段



我有下表:

CREATE TABLE IF NOT EXISTS TEST_TABLE ( testID INTEGER PRIMARY KEY AUTOINCREMENT, testName TEXT);

的一些测试数据

  1. 测试
  2. 你好
  3. aa
  4. 世界

我的查询

SELECT * FROM TEST_TABLE ORDER BY testName

响应:

  1. 你好
  2. 测试
  3. 世界
  4. aa

预期:

  1. aa
  2. 你好
  3. 测试
  4. 世界

有人能解释一下为什么会有这样的反应吗?

试试这个:

SELECT * FROM TEST_TABLE ORDER BY testName COLLATE NOCASE;

这是因为ORDER BY区分大小写,并且"a"大于"Z"。有一种不区分大小写的解决方案:[Your request] ORDER BY testName COLLATE NOCASE

希望这能解释你的问题。

编辑:dom解释之前:-)

最新更新