我如何循环两个列值

时间:2019-01-22 05:55:12

标签: mysql sql

我有一个名为叶子的表。

----------
    id  FromDate    ToDate
    1  20-01-2019    22-01-2019
    2  15-01-2019    22-01-2019
    3  13-01-2019    20-01-2019

我希望每列之间都有所有日期。

有人可以帮忙吗?

2 个答案:

答案 0 :(得分:1)

您可以在下面使用datediff()函数

select id, fromdate, todate,datediff(ToDate,fromdate) as days
from tablename

答案 1 :(得分:1)

如果要在php代码中执行此操作,则可以通过查找两天之间的天数并将其循环以获取这两个日期之间的所有日期来进行。

<?php

$date1 = "2019-01-13";
$date2 = "2019-01-20";

$date1 = strtotime("2019-01-13");
$date2 = strtotime("2019-01-20");
$datediff = $date2 - $date1;

$days = round($datediff / (60 * 60 * 24));

for($i=1;$i<=$days;$i++){
    echo $date1 = date('d-m-Y', strtotime($date1 . ' +1 day'));echo '   <br>   ';
}