11
这种类型的东西以前曾被问过几次,但并不完全是我在寻找的东西。我需要SET
两行等于子查询的不同部分。更新子查询中的多个列
我目前正在使用:
UPDATE records
SET leads=(SELECT COUNT(*) FROM leads_table WHERE leads_table.blah=records.blah),
earnings=(SELECT SUM(amount) FROM leads_table WHERE leads_table.blah=records.blah)
的WHERE语句得到明显简化...但基本上它同子查询,但我不认为我应该被运行两次呢?
我想要做这样的事情......
UPDATE records
SET (leads,earnings)=(SELECT COUNT(*),SUM(amount) FROM leads_table WHERE leads_table.blah=records.blah)
很不错的解决方案.... +1 – sarwar026 2013-09-10 09:42:46
确实很好,优雅而快速。 – Daddy32 2015-09-19 14:55:20
速度快吗?即使你只选择一个,它会不会计算/总计每一个等级? – nbransby 2015-11-24 14:02:50