2017-07-12 25 views
0

我需要一個SQL查詢來比較基於年份和月份的兩個日期。比較2日期,而不考慮當天

I.e.一個日期是2017-07-12,第二個日期是2017-07-30。

由於他們都共享相同的月份和年份,我需要讓他們在我的WHERE查詢。

我知道如何使用DATEFORMAT(將它們轉換爲yyy-mm-01格式)。我想知道是否有更清潔的方式。

+0

向我們顯示查詢 – RiggsFolly

回答

2

可以使用Month()Year()功能比較他們的月和年:

WHERE YEAR(date1)=YEAR(date2) AND MONTH(date1) = MONTH(date2); 

他們的手冊中的mysql date and time functions page一些有用的信息。

1

MySQL的功能EXTRACT()可用於這一目的:

WHERE EXTRACT(YEAR_MONTH FROM date1) = EXTRACT(YEAR_MONTH FROM date2) 

EXTRACT(YEAR_MONTH FROM '2017-07-12')回報'201707'