我有一个查询sqlite3数据库,该数据库提供了已排序的数据。数据是根据varchar“名称”列进行排序的。现在当我执行查询时
varchar
select * from tableNames Order by Name;
它提供了这样的数据。
钢笔 订书机 铅笔
表示正在考虑区分大小写的内容。我想要的方式如下
钢笔 铅笔 订书机
那么,对于必要的结果,我应该在sqlite3数据库中进行哪些更改?
相关如何在字符串比较时将Sqlite3设置为不区分大小写?
SQLite数据类型文档讨论了用户定义的排序规则序列。具体来说,您可以使用COLLATE NOCASE实现您的目标。
他们举了一个例子:
CREATE TABLE t1( a, -- default collation type BINARY b COLLATE BINARY, -- default collation type BINARY c COLLATE REVERSE, -- default collation type REVERSE d COLLATE NOCASE -- default collation type NOCASE );
并注意:
-使用NOCASE排序规则序列进行分组(即,值-‘abc’和’ABC’放在同一组中)。SELECT count(*)GROUP BY d FROM t1;