MySql update inner join!MySql跨表更新 多表update sql语句?如何将select出来的部分数据update到另一个表里面?

来源:互联网 发布:广州房地产交易数据 编辑:程序博客网 时间:2024/05/16 15:09

项目中,评论数,关注数等数据,是实时更新的。+1,-1 这种。

有的时候,可能统计不准确。

需要写一个统计工具,更新校准下。


用Java写SQL和函数,代码很清晰,方便扩展,但是太慢了。

为了简单起见,只写sql来统计,然后更新。(不想写存储过程)

语句如下:

#更新一个人的 关注数 followingCount

update behavior_redman_count ainner join(select memberId,count(*) as followingCount from behavior_follow where type = 10and isDelete=0 group by memberId )b set a.followingCount =b.followingCountwhere a.redmanId = b.memberId;




#MySQL不支持这种语法
update behavior_redman_countset followingCount = b.followingCountfrom(select count(*) as followingCount from behavior_follow where type = 10 and memberId = 198and isDelete=0)b where redmandId = a.memberId and a.memberId= 198;



参考资料

1. Mysql跨表更新 多表update sql语句总结

http://www.jb51.net/article/32648.htm


2.如何将select出来的部分数据update到另一个表里面?

http://bbs.csdn.net/topics/320233666

0 0
原创粉丝点击