我有一张桌子
ID, Start Date, End Date
我有第二张表,其中有一列,日期从2000年到2050年。这是加入开始和结束日期的关键 DATE_ID
我想从这张桌子开始
ID, Start Date, End Date
123, 1/1/2017, 1/5/2017
然后将其加入日期表(第二个表)以输出这样的表
ID, Start Date, End Date, Day Date
123, 1/1/2017, 1/5/2017, 1/1/2017
123, 1/1/2017, 1/5/2017, 1/2/2017
123, 1/1/2017, 1/5/2017, 1/3/2017
123, 1/1/2017, 1/5/2017, 1/4/2017
123, 1/1/2017, 1/5/2017, 1/5/2017
我想加入日期范围,但这不起作用。任何帮助/建议将不胜感激!我正在使用MYSQL。
SELECT
name,
date(start_date),
date(end_date),
d.id as Day_Date
FROM
f_table1 a
Left Join
d_table2 d on d.id = d.id between date(a.start_date) and date(a.end_date)
上面的代码当然没有运行,但到目前为止这是我最好的准备。
答案 0 :(得分:1)
SELECT
name,
date(start_date),
date(end_date),
d.id as Day_Date
FROM f_table1 a
Left Join d_table2 d
on d.id = d.id
and d.`Day Date` between date(a.start_date) and date(a.end_date)
答案 1 :(得分:0)
尝试以下查询:
选择 名称, 日期(起始), 日期(END_DATE), d.id为Day_Date 从 f_table1 a 正确的加入 d_table2 d在日期(a.start_date)和日期(a.end_date)之间的d.id