我正在尝试仅根据安装和删除日期来跟踪库存,并报告在任何给定日期安装的内容。仍在安装的记录没有删除日期。所以我试图将删除日期设置为Date(now()). 但是当我在之间添加时install_date,removal_date它只会找到两个日期的记录。
我有一个包含 的库存表name,install_date并且removal_date我有一个master_date包含从 2012-01-01 到 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_dateNOW 之前的记录。使用 where 子句,它只返回removal_date不为空但日期字段正确的记录。
如何使用 NOW 代替 NULLremoval_date并返回正确的记录?