问题:
有个use_table 中一个用户对应有多个权限,密码是在excel中用rand随机取的,这就导致了一个用户在不同的权限中有不同的密码,为了便于记忆,现在需要找出那些有多个权限的用户,并且把他们的密码改为同一个.
解决方案:
1.找出有多个权限的用户 ,并且取其中每个组的最大或者最小值作为密码
select login_id ,min(password) as password from user_table group by login_id having count(login_id)>=2
2.将user_table 中存在多个权限的用户的密码改为上述步骤中对应的密码
update a set a.password=b.password from
(select login_id ,min(password) as password from user_table group by login_id having count(login_id)>=2) b inner join user_table a on a.login_id=b.login_id