oracle中group by用法报错ORA-00979: not a GROUP BY expression

有用的知识又增加了!!!!

总结:Oracle用group by 分组

有一个规则需要遵守,即出现在select列表中的字段,如果没有在组函数中,那么必须出现在group by 子句中。(select中的字段不可以单独出现,必须出现在group语句中或者在组函数中。)
否则就会出现错误。

需求描述:

根据A_id字段关联查询两个表数据并对字段B_ID分组取表数据

问题描述:

本没多想需要取什么字段,就先用了*来查询,即:

select b.* from B b LEFT JOIN A a on a.A_ID = b.A_ID where a.B_ID = '101' GROUP BY b.B_ID

那么问题就来了,> ORA-00979: not a GROUP BY expression 报错了

查看了这个解决了问题  

[Err] ORA-00979: not a GROUP BY expression_bad00temper的博客-CSDN博客

修改之后

select b.B_ID,b.B_NAME from B b LEFT JOIN A a on a.A_ID = b.A_ID where a.B_ID = '101' GROUP BY b.B_ID,b.B_NAME

以上即解决,如有不同观点或者补充欢迎留言!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值