0
我需要一些帮助来更新数据库中的一些字段,在两个表之间建立两个一对多的关系。更新一对多关系
我有当前设置farmer
有许多box
有很多fruits
。
每个农民在天保固期(int列),每种水果都有到期日(即依赖于交割期NOW() - fruit.expiry_date > farmer.days
)
我的目标是把盒子为过期,但前提是盒子里的所有水果都过期了。
这是我已经结束了:
UPDATE
boxes
SET
expired = true
WHERE id IN (
SELECT
boxes.id
FROM
fruit, boxes, farmer
WHERE
fruit.box_id = boxes.id AND
boxes.farmer_id = farmer.id AND
DATE_PART('day', now() - fruit.expiry_date) > farmer.waranty_days AND
boxes.expired = FALSE
)
的问题是,我被困,以及对如何排除不具有所有的水果过期的箱子不知道。 我也尝试添加一个计数,然后加入结果,但仍然无法正常工作。
欢迎任何建议。