2 u011674967 u011674967 于 2013.08.12 18:17 提问

sql中怎么在update 中使用聚合函数

--将好友超过20的用户等级提高一个级别
select qu.QQID qq号, COUNT(*) 好友总数 from QQUser qu
inner join Relation re on re.QQID=qu.QQID
where RelationStatus=0
group by qu.QQID
having COUNT(*)>20 --此处为了查看数据

update QQUser
set Level=Level+1
where COUNT(*)>20 ,就报错了

1个回答

shendixiong
shendixiong   2013.09.17 17:54

不能直接像你这样在后面加聚合函数作为条件
解决办法:

update QQUser set Level=Level+1 where (select count(*) from QQUser) > 20
Csdn user default icon
上传中...
上传图片
插入图片