早上好,
我在更新数据库时遇到问题。
这是我的订单表:
UPDATE orders
SET orders.paid = NOW()
WHERE (
SELECT orders.parent_id
FROM orders
WHERE orders.id = orders.parent_id
)
现在我需要更新所有支付parent_id的订单。由于嵌套查询,我在执行此操作时遇到了一些麻烦。
我试过这样的事情
1 | NULL | 8 | 2015-20-09 12:00:00
2 | 1 | 7 | 0000-00-00 00:00:00
3 | 1 | 7 | 0000-00-00 00:00:00
4 | NULL | 8 | 2015-18-09 12:00:00
5 | 4 | 7 | 0000-00-00 00:00:00
但这不会有魔力。 无法进入这个:/
Binding
答案 0 :(得分:0)
您可以使用JOIN进行更新
update orders o1
join orders o2 on o2.id = o1.parent_id
set o1.paid = now()
where o2.paid <> '0000-00-00 00:00:00'