Date Compare on Java & SQL

最近剛好在存取資料庫資料做分析時,有一個欄位剛好是日期,格式如yyyy/MM/dd,由於

資料表該欄位設定成string格式,故如果您在查詢資料時想要做filter的動作,可以在查詢當下

先將它轉成Date格式,如下:

SELECT * FROM table where date(UpdateTime) >= '2012/06/01';

經由這段簡短的語法,即可得到結果。

再來的情況是撈取資料表。在做資料分析時,當兩者要任選其一時,依據時間來決定要

留下哪一個。

此時您會需要先制定要parser的日期格式,格式的制定須引用java.text

SimpleDateFormat dateformat = new SimpleDateFormat("yyyy/MM/dd");

java.util.Date date1 = dateformat.parse("2012/09/13");

java.util.Date date2 = dateformat.parse("2009/09/13");

可以透過before or after function
if (date1.before(date2)) {} 

或者是

if(date1.compareTo(date2) < 0){} //before, 

== 0 //same

> 0 //after

如此就可以透過java.text幫我們parser得到結果。

留言