按日期过滤SQL结果

皮特·H:

这是我对维护日期列表的查询。

SELECT `checkdates`.`checkdateplanneddate`, `checkdates`.`checkdatevehicle`, `checktypes`.`checktype`, `checktypes`.`emailto`, `checktypes`.`daysnotice`
FROM `checkdates`
    , `checktypes`
WHERE `checktypes`.`checktype` = `checkdates`.`checkdatechecktype`;

想法是..服务器每天都会根据为该类型支票设置的天数通知客户,向客户发送电子邮件,以告知他们哪些支票日期即将到来。(见图片)

当前它显示所有检查日期。

我需要做的就是过滤列表,以便仅显示“ Todays date plus checktypes.daysnotice”的日期。

我尝试了许多不同的查询,但似乎无法获得正确的组合。

先感谢您

我已附上图片以显示数据可用

数据可用,但我需要过滤日期

专线小巴:

如果我正确理解了您的问题,并假设您正在运行MySQL(如使用反引号引起引用,并且phpmyadmin屏幕复制指示),则可以按以下方式使用日期算术:

SELECT cd.checkdateplanneddate, cd.checkdatevehicle, ct.checktype, ct.emailto, ct.daysnotice 
FROM checkdates cd
INNER JOIN checktypes ct ON ct.checktype = cd.checkdatechecktype
WHERE cd.checkdateplanneddate = current_date + interval ct.daysnotice day

where条件实现了所需的逻辑。

旁注:

  • 使用标准的显式联接!隐式连接(from子句中带有逗号)是一种非常古老的语法,不应在新代码中使用

  • 表别名使查询更易于读写

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章