shaokel 2021-07-19 15:44 采纳率: 95.2%
浏览 23
已采纳

oracle DISTINCT提示需要group by

单纯DISTINCT一个字段有没有出现这样的问题。还是我语法用错了

img

  • 写回答

1条回答 默认 最新

  • 咕泡-景天 2021-07-19 16:09
    关注

    你这个语法有问题啊,你使用的distinct是对后面所有的字段进行去重,我这里跟你提供一种方式,你可以尝试一下

    先去重,再聚合
    select t.department_name depname,
    t.department_key,
    listagg(t.class_key, ',') within group(order by t.class_key) as class_keys
    from (select distinct s.class_key, s.department_key, s.department_name
    from V_YDXG_TEACHER_KNSRDGL s) t
    group by t.department_key, t.department_name

    --或者
    select s.department_key,
    s.department_name,
    listagg(s.class_key, ',') within group(order by s.class_key) as class_keys
    from (select t.department_key,
    t.department_name,
    t.class_key,
    row_number() over(partition by t.department_key, t.department_name, t.class_key order by t.department_key, t.department_name) as rn
    from V_YDXG_TEACHER_KNSRDGL t
    order by t.department_key, t.department_name, t.class_key) s
    where rn = 1
    group by s.department_key, s.department_name;

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 已采纳回答 7月19日
  • 创建了问题 7月19日

悬赏问题

  • ¥15 BV260Y用MQTT向阿里云发布主题消息一直错误
  • ¥20 求个正点原子stm32f407开发版的贪吃蛇游戏
  • ¥15 正弦信号发生器串并联电路电阻无法保持同步怎么办
  • ¥15 划分vlan后,链路不通了?
  • ¥20 求各位懂行的人,注册表能不能看到usb使用得具体信息,干了什么,传输了什么数据
  • ¥15 Vue3 大型图片数据拖动排序
  • ¥15 Centos / PETGEM
  • ¥15 划分vlan后不通了
  • ¥20 用雷电模拟器安装百达屋apk一直闪退
  • ¥15 算能科技20240506咨询(拒绝大模型回答)