oracle 数据库 group by分组

有一个奇奇怪怪的数据,我需要根据二级区域分组,但是相同的二级区域里面的经度和纬度不同,就会有多条数据,我需要二级区域只有一条数据,经度纬度随便取一条对应的数据即可,不能根据取日期最大值的经度纬度,表里面没有日期。需要展示的字段有二级区域,经度,纬度。

SELECT C.SECONDARYAREA AS 二级区域,C.LONGITUDE 经度,C.LATITUDE 纬度,sum(SALESAREA) 销售 FROM "T_CHANNEL_INFO" C WHERE C.LONGITUDE !=0 OR C.LATITUDE !=0 GROUP BY C.SECONDARYAREA, C.LONGITUDE ,C.LATITUDE

image.png

wangqiaofeng 发布于 2021-4-8 09:59 (编辑于 2021-4-8 13:55)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
1
zsh331Lv8专家互助
发布于2021-4-8 12:38(编辑于 2021-4-8 14:16)

SELECT

new_1.*, new_2.salesarea

FROM

(

SELECT

*

FROM

(

SELECT

*, row_number () over (

PARTITION BY 二级区域

ORDER BY

longitude DESC

) AS t

FROM

tabname

) new_x

WHERE

t = 1

) new_1

LEFT JOIN (

SELECT

二级区域,

sum(salesarea) AS salesarea

FROM

tabname

GROUP BY

二级区域

) new_2 ON new_1.二级区域 = new_2.二级区域

————————————————————————————————

image.png

  • wangqiaofeng wangqiaofeng(提问者) 执行这句的时候要报错 ( SELECT *, row_number ( ) over (PARTITION BY SECONDARYAREA ORDER BY LONGITUDE DESC ) AS t FROM T_CHANNEL_INFO ) > ORA-00923: 未找到要求的 FROM 关键字
    2021-04-08 13:54 
  • zsh331 zsh331 回复 wangqiaofeng(提问者) 语句格式化一下,可能存在特殊符号。
    2021-04-08 13:56 
  • wangqiaofeng wangqiaofeng(提问者) 我QQ联系你哈
    2021-04-08 14:11 
最佳回答
0
krystal033Lv7高级互助
发布于2021-4-8 10:00

经纬度不取不就好了

  • 3关注人数
  • 568浏览人数
  • 最后回答于:2021-4-8 14:16
    请选择关闭问题的原因
    确定 取消
    返回顶部