我需要一個SQL查詢來比較基於年份和月份的兩個日期。比較2日期,而不考慮當天
I.e.一個日期是2017-07-12,第二個日期是2017-07-30。
由於他們都共享相同的月份和年份,我需要讓他們在我的WHERE查詢。
我知道如何使用DATEFORMAT(將它們轉換爲yyy-mm-01格式)。我想知道是否有更清潔的方式。
我需要一個SQL查詢來比較基於年份和月份的兩個日期。比較2日期,而不考慮當天
I.e.一個日期是2017-07-12,第二個日期是2017-07-30。
由於他們都共享相同的月份和年份,我需要讓他們在我的WHERE查詢。
我知道如何使用DATEFORMAT(將它們轉換爲yyy-mm-01格式)。我想知道是否有更清潔的方式。
可以使用Month()
和Year()
功能比較他們的月和年:
WHERE YEAR(date1)=YEAR(date2) AND MONTH(date1) = MONTH(date2);
他們的手冊中的mysql date and time functions page一些有用的信息。
MySQL的功能EXTRACT()
可用於這一目的:
WHERE EXTRACT(YEAR_MONTH FROM date1) = EXTRACT(YEAR_MONTH FROM date2)
EXTRACT(YEAR_MONTH FROM '2017-07-12')
回報'201707'
。
向我們顯示查詢 – RiggsFolly