1

我正在编写一个 Iphone 应用程序并使用 sqlite 作为我的数据库。我有 10 个对象,我需要按它们的类别 ID 对它们进行排序。所有的 id 都是数字(从 1 到 10)。

sql 语句如下所示:SELECT * FROM PACKAGE ORDER BY CATEGORYID ASC

当我查询时,结果显示 1,10,2,3,4....9。

我该如何解决这个问题?

4

2 回答 2

3

也许是因为 categoryID 是TEXT

SELECT * FROM PACKAGE ORDER BY CAST(CategoryID as INTEGER) ASC;
于 2012-12-07T09:51:11.527 回答
1

问题似乎与类别 id 的数据类型有关,如果它的字符,那么您将获得如上所示的顺序。但如果数据类型是数字,您将使用正确的格式

于 2012-12-07T09:52:30.137 回答