以前在mysql数据保存时间习惯用int保存时间戳,一直没有机会使用timestamp类型,下面好好总结下其用法:
该类型在数据库保存的时间格式:YYYY-MM-DD HH:MM:SS
在SQL比较时间大小的方法:
SELECT * FROM wxm_diy_page WHERE mTime>'2012-9-1' AND mTime<'2012-10-31' ORDER BY mTime ASC
该类型比较有用的可设默认当时时间为默认值,并也可设置如果改记录被update,自动更新改字段的值,非常适合记录字段的更新时间的字段:
`mTime` timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
前台显示人性化的时间,如多少小时前 ...,需要先转换成时间戳:
mysql> SELECT UNIX_TIMESTAMP('2009-08-06') ;
->1249488000
SELECT *, UNIX_TIMESTAMP(mTime) as modifyTime FROM wxm_diy_page WHERE mTime>'2012-9-1' AND mTime<'2012-10-31' ORDER BY mTime ASC
在PHP中的转换方法:
strtotime('2010-2-14')