在 SQL 中添加列为 End_date,间隔 +100 天

add column as End_date with +100 days interval in SQL

我正在尝试解决这个问题。 table 有 cycle and date 列,我想再添加一列作为 end date with interval of 100 days from current date 并想显示 cycle, start_date, end_date 作为输出。

我试过了

select cycle, min(start) as startt, max(start) as endd  
from cy 
group by cycle ;

然而直到现在都没有运气。

它的 MYSQL 数据库最新版本。

CREATE TABLE table1 (
  `cycle` INTEGER,
  `date` DATE,
);

INSERT INTO table1
  (`cycle`, `date`)
VALUES
  ('1', '15-Jan-21'),
  ('2', '01-Aug-21'),
  ('3', '08-sep-21'),
  ('4', '15-Dec-21');

输出:

如果我理解正确的话,如果您的 MySQL 版本支持,您可能希望将 LEAD window 函数与 DATE_SUB 一起使用。

SELECT *
FROM (
 SELECT *,DATE_SUB(LEAD(`date`) OVER(ORDER BY cycle), INTERVAL 1 DAY)  endDate
 FROM table1
) t1
WHERE endDate IS NOT NULL 

sqlfiddle