2015-06-21 110 views
0

我认为标题很清楚我的问题是什么。我正在使用MySql我只想知道我网站上的第一次注册是什么,当我根据时间戳对网站进行排序时,id在网站上注册的人不是真实的。该图像波纹管将显示这是什么意思: phpMyAdmin在MySql中按时间排序不起作用

,这是什么phpMyAdmin的创建的代码:

SELECT * 
FROM `table` 
ORDER BY `table`.`timestamp` ASC 
LIMIT 0 , 30 

什么错我的表的时间?为什么ID没有顺序相同时间戳

+0

什么更新时间戳?是一个AUTO_INCREMENT? – Martin

回答

1

如果我们假设id是一个自动递增字段,那么这是几乎可以肯定是由于这样的事实,timestamp列不相同的物理时间分配id列已分配。例如,如果您从网站应用程序进行多页注册,则可以将初始对象插入到数据库中以包含第一页收集的初始数据字段。但是也许timestamp只有在最后一页注册完成后才会设置。因此,根据用户完成注册所需的时间,timestamp可能会与id订单不同步。

有多种方法可以解决此问题。一种方法是在记录第一次插入数据库时​​分配timestamp,或者可以使用DB插入触发器填充timestamp字段。

timestamp也可能表示用户上次修改其配置文件的日期和时间(或以其他方式导致修改数据库记录)。在这种情况下,timestamp可能会更改为“将来”值,而id保持不变。