我想将日期保存到数据库中,而且,当我从数据库获取结果时,我想按日期对它们进行排序并按日期对它们进行分类:例如显示结果,这些结果不到一天,所以在...保存日期的最佳方法是什么?
答案 0 :(得分:10)
如果您指的是MySQL列数据类型,请使用DATE
,除非您想要包括时间,在这种情况下它是DATETIME
。常见的一个始终是TIMESTAMP
,但不同的架构可能会产生不必要的结果。
总结:DATE
关于日期和时间格式:http://dev.mysql.com/doc/refman/5.0/en/datetime.html
关于排序,它与正常情况相同:ORDER BY my_date_column
不到1天:WHERE my_date_column = DATE(NOW()) - INTERVAL 1 DAY
答案 1 :(得分:1)
使用timestamp
作为存储日期的列的数据类型。要存储日期,如果要存储当前时间,请使用函数now()
。
或者在PHP中使用strtotime()
函数:
$timestamp = strtotime('22-09-2008');
答案 2 :(得分:0)
在表中创建一个名为“LastSaved”的字段,其数据类型为TIMESTAMP。然后,您可以在保存或插入数据时在查询中使用NOW()作为值更新此字段。
或者,如果您使用触发器,请在Before Insert和Before Update事件中创建基本触发器
SET NEW.LastSaved= NOW();
要订购结果,您可以执行类似
的操作SELECT FieldName FROM YourTableName
ORDER BY LastSaved DESC
答案 3 :(得分:0)
Datetime是一个很好的解决方案,但如果您关心夏令时,请使用时间戳。