您必須檢索數據庫的一個記錄,這個記錄應該儘可能最接近我的參數(日期(YYYY-MM)),請記住db(sql server)中的列是DATETIME,所以我需要的格式,所以我可以比較的,這裏是我一直在做的事情:如何將SQL DATETIME格式化爲給定日期並回顧一條記錄?
public Document findByDate(String date) throws GeneralException{
Document docs = new Document();
String d1 = date;
String delimiter = "-";
String[]temp = d1.split(delimiter);
try{
String sql = "SELECT TOP(1) * FROM Document WHERE issueDate >= '" + temp[1]+ temp[0] +"' AND issuedate < '"+ temp[1]+ temp[0] +"' ORDER BY issueDate DESC ";
ResultSet rs = this.executeQuery(sql);
while(rs.next()){
docs = (Document) this.build(rs);
}
if(docs != null){
return docs;
} else {
return docs = null;
}
} catch (SQLException ex){
throw new GeneralException(ex);
}
}
非常感謝您
日期YYYY-MM?你最接近什麼意思。接近同一個月的開始還是結束?並且它是否必須在2012-10-01的同一個月內比2010-09年末更接近於2012-09-15 –
我每個月只有一個記錄,因此如果它不是實際的月份應該是前一個 –