我正在执行一个显然包含 MySQL 子查询的查询。
让我直接进入代码:
SELECT DATEDIFF(CURDATE(),
(SELECT due FROM checkOut JOIN People ON checkOut.p_id = People.p_id
WHERE CASE WHEN DATE_SUB(date_add(CURDATE(),INTERVAL 4 MONTH), INTERVAL 3 MONTH)
>= checkOut.checkTime THEN 1 ELSE 0 END ORDER BY checkOut.due)
);
主要查询是SELECT DATEDIFF()
. 其中是我的子查询,它实质上是在表中搜索以根据时间间隔查找过期的项目。我知道查询将返回多行,并且它不适用于我目前的设置方式。
我想要的是从我的返回多个值SELECT DATEDIFF()
,以便我以后可以用 php 循环它。详细地说,我希望子查询中返回的每一行都具有来自DATEDIFF()
. 如何修改此查询以执行我想要的操作?或者如果有人有更好的方法,请告诉我。
任何帮助表示赞赏。
如果您想知道为什么在 中存在 a DATE_ADD()
,DATE_SUB()
那么只需使查询适用于今天。