我有以下表格:
tweets retweets
----------------- ----------------
user_id retweets user_id (etc...)
----------------- ----------------
1 0 1
2 0 1
1
2
2
我想计算每个用户的转发次数并相应地更新 tweets.retweets:
UPDATE users
SET retweets = (
SELECT COUNT(*) FROM retweets WHERE retweets.user_id = users.user_id
)
我已经两次运行此查询,但它超时(在不是那么大的表上)。我的查询有问题吗?
另请参阅 SQL Fiddle(尽管它显然不允许UPDATE
语句):http ://www.sqlfiddle.com/#!2/f591e/1