如何用 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
首先我在论坛上搜索了我的问题的答案。我正在使用 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