簡體   English   中英

mysql查詢天數並計算日期之間的天數

[英]mysql query between days and calculate days between dates

我需要獲取ID和天數之間的天數。

INSERT INTO Events
    (`ID`, `START`, `END`)
VALUES
    (2313, '2019-07-29', '2019-08-10'),
    (41, '2019-06-22', '2019-07-01'),
    (2540, '2019-06-22', '2019-07-02'),
    (2234, '2019-06-28', '2019-07-12'),
    (2634, '2019-06-30', '2019-07-04'),
    (53, '2019-06-30', '2019-07-02'),
    (1869, '2019-06-30', '2019-07-15'),
    (2132, '2019-07-30', '2019-08-10')
;

我的查詢是

SELECT `ID`
  FROM Events 
 WHERE `START` BETWEEN '2019-07-01' AND '2019-07-31' 
   AND `END` BETWEEN '2019-07-01' AND '2019-07-31';

我需要輸出為

2313 - 3
41 - 1
2540 - 2
2234 - 12
.....

請幫我。

GREATEST返回列表中的最大值,最小-最小值

select ID, 
       DATEDIFF(LEAST(`END`,'2019-07-31'), GREATEST(`START`, '2019-07-01')) + 1
from events

使用DATEDIFF()函數。

SELECT `id`, DATEDIFF(`start`, `end`) 
FROM `events` 
WHERE 
 `start` BETWEEN '2019-07-01' AND '2019-07-31' AND
 `end` BETWEEN '2019-07-01' AND '2019-07-31';

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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