oracle group表达式,sql – 为什么Oracle不是说GROUP BY表达式?

我正在尝试使用以下条件从Oracle数据库表中检索数据

> zip-code找到的所有条目都应按照邮政编码降序进行分组.

>按城市找到的条目应按字母顺序进行分组.

>所有由dealername找到的条目应按字母顺序分组.

为了满足上述条件,我编写了如下查询

SELECT DISTINCT ba.uuid AS uuid

, COUNT(*) over() AS rowcount

FROM basicaddress ba

WHERE ba.postalcode='143456'

OR ba.lastname LIKE '%143456%'

OR ba.city LIKE '%143456%'

GROUP BY

CASE WHEN ba.postalcode='143456' THEN ba.postalcode END

ORDER BY

CASE WHEN ba.postalcode='143456' THEN ba.postalcode END DESC,

CASE WHEN ba.lastname LIKE '%143456%' THEN ba.lastname END ASC,

CASE WHEN ba.city LIKE '%143456%' THEN ba.city ELSE ba.postalcode END DESC

这个查询在MYSQL中运行正常,但在oracle中它说“不是GROUP BY表达式”

任何帮助将不胜感激

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值