rs.getDate()只是返回日期部分
rs.getTime()只是返回時間部分rs.getTimestamp()纔是返回時間和日期
今天碰到一個mysql日期時間比較查詢的問題,將解決的經驗寫下來分享。
mysql數據庫中存的時間格式爲2008-12-28 18:08:08,現在先要從一個一個結果集rs中獲得一個日期時間。我先用rs.getDate()方法試着獲取時間,結果只有年月日,無法獲取小時、分和秒。最後解決的方法是:
Date time1=new Date(rs.getTimestamp("pub_time").getTime());
SimpleDateFormat formattime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String pubtime=formatime.format(time1);
獲得的pubtime爲String型,在sql語句中用mysql的時間函數date_format('time','format')轉換:
String sqlstr="select * from do_document where pub_time<date_format('"+pubtime+"','%Y-%m-%d %H:%i:%s') order by pub_time desc limit 0,1";
然後執行該sql語句就查到了滿足條件的記錄。