SELECT h.Index,h.PUID,h.ResIdx,h.Latitude,h.Longitude,h.Bearing,h.Speed, h.Altitude,h.State,h.MaxSpeed,h.MinSpeed,UNIX_TIMESTAMP(h.UTC) AS UTC,h.Timestamp FROM HistoryGPSData h WHERE h.SUResourceInfo_Index=1 AND h.PUID="151000000012132264" AND h.ResIdx=0 AND h.UTC BETWEEN ("2015-11-02 00:00:00") AND ("2015-11-02 01:00:00") ORDER BY h.Index
index是自增主键
SUResourceInfo_Index、PUID、ResIdx、UTC 四个有个联合索引
数据都是一行一行插入,然后index自增的
问一下这样查询输出顺序是不是本来就是按照插入顺序也就是index顺序输出的 不需要后面的ORDER BY h.Index?
联合索引的顺序是不是就是插入顺序?
解决方案
50
问一下这样查询输出顺序是不是本来就是按照插入顺序也就是index顺序输出的 不需要后面的ORDER BY h.Index?
不一定,假如不指定ORDER BY,则由MYSQL自行决定输出。
联合索引的顺序是不是就是插入顺序?
除巧合情况下,基本不是。
不一定,假如不指定ORDER BY,则由MYSQL自行决定输出。
联合索引的顺序是不是就是插入顺序?
除巧合情况下,基本不是。
50
那肯定不会,除非你的数据变化了,例如数据被删除了或在原来的数据中间,插入了新的数据,那可能会重叠