[英]Unable to compare java.util.Date value with MySQL datetime column values
[英]How to modify compare and manipulate datetime values in mysql and Java?
我的數據庫中有一列屬於datetime類型的列。我想先提取記錄,然后再將此datetime值與參考datetime值進行比較,然后監視相應datetime值的+-2個月內的某些活動(該日期時間之前的2個月和該日期時間之后的2個月)。我能夠獲取記錄,但是對於操縱datetime值一無所知。我讀了這篇文章( 如何更改datetime中的時間? ),但我無法獲取因為該帖子僅更改時間,而不更改datetime的日期部分。此外,由於該帖子是針對C#的,因此我無法在Java中執行相同的操作。
注意:我的日期時間值的格式為yyyy-mm-dd hh:mm:ss
您可以根據需要在MySQL中執行某些操作。
SELECT whatever FROM whattable
WHERE whatdatetime > targettime - INTERVAL 2 MONTH
AND whatdatetime < targettime + INTERVAL 2 MONTH
這將檢索指定四個月范圍內的記錄。
或者,您可以執行此操作以使用MySQL的日期算術。
SELECT whatdatetime,
whatdatetime - INTERVAL 2 MONTH AS startrange,
whatdatetime + INTERVAL 2 MONTH AS endrange
要在Java中完成這些工作,您將需要使用由java.util.GregorianCalendar實現的java.util.Calendar抽象類。
Java的GregorianCalendar類的實例可以提供以下方法調用,其中包括:
calendar.add(Calendar.MONTH, -2);
calendar.add(Calendar.MONTH, 2);
這應該可以讓您到達目的地。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.