如何用 MySQL 创建今天、明天和昨天

How to create today, tomorrow and yesterday with MySQL

首先我在论坛上搜索了我的问题的答案。我正在使用 PHP & MySQL 创建每周计划,问题是当实际日期是星期日时我不知道如何设置案例语句,我需要将星期一设置为明天。 这是我简单的MySQLtable一周

Fields: dayid(int,primary,auto-increment),day(varchar(25))
Data: (1,'Monday'),(2,'Tuesday'),(3,'Wednesday'),(4,'Thursday'),
      (5,'Friday'),(6,'Saturday'),(7,'Sunday');

这是我的 php 代码:

$today = date("N");
$query = "SELECT *,case when dayid = '$today' THEN 'Today'
                        when dayid = '$today' + 1 THEN 'Tomorrow'
                        when dayid = '$today' - 1 THEN 'Yesterday'
                        ELSE day END days FROM week ";
$results = mysqli_query($link, $query);
while ($r = mysqli_fetch_array($results)) {
echo '<p>'.$r['days'].'</p>'; }

就像我之前写的那样,我不知道如何设置它,所以当 $today = 7(星期日)时,星期一会说明天,反之亦然,所以当它是星期一时,它会说昨天而不是星期日。希望有人能帮我解决这个问题。

提前致谢!

你需要用IF周转:

CASE dayid
    WHEN $today THEN Today
    WHEN IF($today = 7, 1, $today + 1) THEN 'Tomorrow'
    WHEN IF($today = 1, 7, $today - 1) THEN 'Yesterday'
    ELSE day
END days