簡體   English   中英

如何在mysql和Java中修改比較和操作datetime值?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM