缺失set关键字
createtableAstudent(sidint,snamevarchar(10),cidint);createtablesclass(sidint,snumint)...
create table Astudent (
sid int,
sname varchar(10),
cid int
);
create table sclass (
sid int,
snum int
);
snum是班级人数
这是表结构
将班级人数统计出来,更新到sclass表中的snum字段
update sclass s,(select cid,count(*) snum from Astudent group by cid order by cid desc) cc set s.snum=cc.snum where s.sid=cc.cid;
这句话总是提示缺失set关键字
怎么回事啊 求高手 展开
sid int,
sname varchar(10),
cid int
);
create table sclass (
sid int,
snum int
);
snum是班级人数
这是表结构
将班级人数统计出来,更新到sclass表中的snum字段
update sclass s,(select cid,count(*) snum from Astudent group by cid order by cid desc) cc set s.snum=cc.snum where s.sid=cc.cid;
这句话总是提示缺失set关键字
怎么回事啊 求高手 展开
1个回答
展开全部
update sclass set snum=cc.snum from sclass s inner join (select cid,count(*) snum from Astudent group by cid) cc on s.sid=cc.cid;
sqlserver写写法
注意一点,这种写法会把关联不上的那些置空,运行前请备份sclass表数据
追问
这是Oracle下写的,但是采用的就是标准SQL啊 分析下来是没问题的 但是一运行就是缺失Set关键字
追答
oracle下的这么写
update sclass s set s.snum=(select cc.snum(select cid,count(*) snum from Astudent group by cid) cc where s.sid=cc.cid);
有些东西sqlserver和oracle还是略有区别的
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询