现在会员A表, 另一张B表,
现在我想用一条语句把A表里的会员在B表里的数据求和后更新到A表!
UPDATE record r, user u SET u.service_time=sum(r.service_time) WHERE r.user_uid = u.uid AND r.service_time <> 0 AND r.is_check = 1;上面语句不行,然后我用了下面个子查询
update user u, (select sum(service_time) as total, user_uid from record where service_time <> 0 AND is_check = 1) r set u.service_time=r.total where r.user_uid = u.uid;上面也不行,虽然没有报错,但是执行下去,并没有更新到数据!然后我把条件移到了子查询内也不行!
update user u, (select sum(service_time) as total, user_uid from record where service_time <> 0 AND is_check = 1) r set u.service_time=r.total where r.user_uid = u.uid;
在此感谢大家的帮忙!
mysql上别折腾复杂逻辑sql实现无比赞同<preclass="brush:cpp;toolbar:true;auto-links:false;">updateuseru,(selectsum(service_time)t,user_uidfromrecordgroupbyuser_uid)rsetu.service_time=r.twhereu.uid=r.user_uid
没有用groupby所导致的
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。