Sqlite Group通过反转订单

时间:2015-11-18 11:47:58

标签: ios sqlite group-by

这是我的疑问:

SELECT * FROM Message WHERE ParentMessage = ? GROUP BY MessageId  

这反转了结果的顺序 不确定为什么

分组前的屏幕上的记录:

一个

ç
D

分组依据后的屏幕上记录:

d
ç

2 个答案:

答案 0 :(得分:0)

在SQL中,除非您使用ORDER BY,否则查询结果没有任何保证顺序。

(在这种情况下,查询优化器可能已经估计以某种方式使用索引会使执行更快。)

答案 1 :(得分:0)

如果你的tableName是Message并且列名是ParentMessage,那么你的行名最后是Message ID,结果如下所示

select * from Message WHERE ParentMessage in (MessageId) order by ParentMessage DESC

否则

select * from Message WHERE ParentMessage order by MessageId DESC