【发布时间】:2013-08-21 22:26:45
【问题描述】:
我正在尝试仅根据安装和移除日期来跟踪库存,并报告任何一天的安装情况。仍在安装的记录没有删除日期。所以我试图将删除日期设置为Date(now())。但是当我在install_date 和removal_date 之间添加时,它只会找到两个日期的记录。
我有一个库存表,其中包含 name、install_date 和 removal_date,我有一个 master_date 表,其中包含从 2012 年 1 月 1 日到 2014 年 12 月 31 日的所有日期
Select inventory.name,
inventory.install_date,
IFNULL(inventory.removal_date,DATE(NOW())),
master_date.date
FROM inventory, master_date
WHERE master_date.date BETWEEN inventory.install_date
AND inventory.removal_date
如果我删除 between 子句,它会将 removal_date 设置为 NOW,但会继续包含 removal_date 在 NOW 之前的记录。使用 where 子句,它只返回 removal_date 不为空但日期字段正确的记录。
如何使用 NOW 代替 NULL removal_date 并返回正确的记录?
【问题讨论】:
标签: mysql