SQL2005 报错 在关键字'group' 附近有语法错误

SQL2005报错在关键字'group'附近有语法错误selecta,b,sum(x)from(selecta,b,'1'asxfromaaaunionallselect... SQL2005 报错 在关键字'group' 附近有语法错误
select a,b,sum(x) from (
select a,b,'1' as x from aaa
union all
select a,b,'-1' as x from bbb)
group by a,b
改成下面这样还是同样报错:
select a,b,sum(x) from (
select a,b,'1' as x from aaa
)
group by a,b
各位大侠,同样的语句我再oracle9中就能执行,在SQL2005中执行就报错,请问有什么问题?
展开
 我来答
wjinbd
2010-10-09 · TA获得超过8686个赞
知道大有可为答主
回答量:1536
采纳率:100%
帮助的人:2012万
展开全部
select a,b,sum(x) from (
select a,b,'1' as x from aaa
union all
select a,b,'-1' as x from bbb) xx --注意看这里 多了一个别名xx
group by a,b

改成这样 为 from 后面的子查询指定一个名字 这里用的xx 你可以自己改一个
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友5aa644a90
2010-10-11
知道答主
回答量:18
采纳率:0%
帮助的人:15.5万
展开全部
select m.a,m.b,sum(m.x) from --加前缀,表示区分
(select a,b,1 as x from aaa
union all
select a,b,-1 as x from bbb) m --别名
group by m.a,m.b --加前缀,表示区分

要给select a,b,1 as x from aaa
union all
select a,b,-1 as x from bbb 这张表取个别名 m
这样字段a,b才能很好的区分。
还有就是1和-1不能加单引号,加了单引号表明它们是字符串了,那么就不能进行sum运算了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式