qq_34181339 2019-12-05 11:35 采纳率: 57.1%
浏览 645
已采纳

oracle排序之后如何按照不重复进行分组

比如查询出来只有一列,排序的时候不光按照这个列进行排列,所以查出来的结果会像这样A,B,C,D,E,A,C,D,A,B。现在需要将它分组为[(A,B,C,D,E),(A,C,D),(A,B)]也就是每当找到一个新的A就分组拼接,拼接结果为[A-B-C-D-E,A-C-D,A-B]这个该如何实现,最好直接能在查询语句中直接实现。就像map里的contains,一旦不包括在map里就把前面的分为一组,再拼接。

  • 写回答

1条回答

  • Kevin.Y.K 2019-12-05 14:00
    关注
    写一个mysql的写法给你参考:
    
    1.替换','
    2.替换'-A'
    3.前后拼接'[',']'
    
    select concat('[',replace(replace('A,B,C,D,E,A,C,D,A,B', ',', '-'), '-A', ',A'),']')
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services
  • ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏
  • ¥15 模糊pid与pid仿真结果几乎一样
  • ¥15 java的GUI的运用
  • ¥15 Web.config连不上数据库
  • ¥15 我想付费需要AKM公司DSP开发资料及相关开发。
  • ¥15 怎么配置广告联盟瀑布流
  • ¥15 Rstudio 保存代码闪退
  • ¥20 win系统的PYQT程序生成的数据如何放入云服务器阿里云window版?