使用PRIMARY KEY ASC的SQLite SELECT默认顺序

时间:2014-01-28 22:38:15

标签: sqlite select

我使用:

创建了一个SQLite表
CREATE TABLE T1 (
  CN INTEGER PRIMARY KEY ASC,
  Name TEXT
);

如果我这样做:

SELECT * FROM T1

即使没有指定ORDER BY子句,我是否会通过CN获取行顺序? CN是ROWID的别名吗?

1 个答案:

答案 0 :(得分:8)

没有默认订单,如果您需要订购结果,请添加明确的order by子句。

dbms经过优化,可以根据查询快速获取所需数据。在这种情况下,它是CN上的主键,但这只是因为你的例子很简单。永远不要依赖于dbms选择你想要的订单。