欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

mysql 查詢沒有數據的月份

洪振霞2年前10瀏覽0評論

在mysql中,我們有時需要查詢某個時間段內的數據,但是不一定每個月都有數據,如何查找沒有數據的月份呢?下面是一種方法:

SELECT a.year,a.month 
FROM (
SELECT YEAR(date) AS year, MONTH(date) AS month 
FROM table
WHERE date BETWEEN '開始時間' AND '結束時間'
GROUP BY YEAR(date), MONTH(date)
) AS a
LEFT JOIN (
SELECT YEAR(date) AS year, MONTH(date) AS month 
FROM table
WHERE date BETWEEN '開始時間' AND '結束時間'
GROUP BY YEAR(date), MONTH(date)
) AS b
ON a.year = b.year AND a.month = b.month
WHERE b.year IS NULL

代碼解釋:

先通過對時間段內數據去重,取出所有月份,然后做一個自連接,找出有數據的月份與所有月份的交集,最終通過判斷右表沒有數據來確定不存在數據的月份,從而實現查詢沒有數據的月份。