Mysql中用int字段存日期 1、建表 create table testIntDate( id int not null auto_increment, p_date int(10), primary key(id) ); 2、插入測試數(shù)據(jù) 插入時用UNIX_TIMESTAMP() 函數(shù)將日期串轉(zhuǎn)換成int(Unix時間戳) insert testIntDate values(null,UNIX_TIMESTAMP('2009-08-06')); insert testIntDate values(null,UNIX_TIMESTAMP('2015-12-06')); insert testIntDate values(null,UNIX_TIMESTAMP('2015-12-06 11:12:46')); insert testIntDate values(null,UNIX_TIMESTAMP('2015-06-16 18:23:54')); 3、查詢數(shù)據(jù) 用FROM_UNIXTIME(p_date)將int轉(zhuǎn)換成日期串 select id,FROM_UNIXTIME(p_date) from testIntDate; select id,FROM_UNIXTIME(p_date,'%Y-%m-%d') from testIntDate; 4、Java當(dāng)中,將當(dāng)前日期轉(zhuǎn)換成Unix時間戳(Unix timestamp)存入數(shù)據(jù)庫 Math.round(new java.util.Date().getTime()/1000) 5、Java當(dāng)中,實現(xiàn)Unix時間戳(Unix timestamp) → 普通時間 String date2 = new java.text.SimpleDateFormat("dd/MM/yyyy HH:mm:ss") .format(new java.util.Date(1434031896*1000L)); 注意;1000后面要加L,否則否按int計算結(jié)果,導(dǎo)致錯誤 參考資料: http://blog./254697.htm
|
|