zoukankan      html  css  js  c++  java
  • Oracle 使用LISTAGG()函数拼接数据库表字段

    基础的用法如下:
    LISTAGG(1,2) WITHIN GROUP( ORDER BY 3)
    1:需要拼接的数据表中的字段
    2:以什么字符分割,例如逗号,分号等字符
    2与3是相同的字段
    它的用法就像聚合函数一样,通过Group by语句,把每个Group的一个字段,拼接起来。
    下面举个例子:
    (1)有如下图一个表里面存了三组数据,只有DEMO字段不同,我们想把他以一条数据表达 [A | B | C;D;E]
    SELECT *FROM TestTempDemo

     (2)我们使用LISTAGG()函数就很容易做到将DEMO字段拼接起来,如下图

    SELECT  LISTAGG(T.DEMO,';') WITHIN GROUP (ORDER BY T.DEMO)AS DEMO FROM TestTempDemo T

     (3)但是我还需要把其他值也一起查出来,那么就需要整体查询了,如下图

    SELECT DISTINCT T.TEST,T.TEMP,(SELECT  LISTAGG(T.DEMO,';') WITHIN GROUP (ORDER BY T.DEMO)AS DEMO FROM TestTempDemo T) AS DEMO  FROM TestTempDemo T

     希望对你们有所帮助!

  • 相关阅读:
    PPT1 例1
    皇宫看守 树形DP
    没有上司的晚会 树形DP
    将功补过 树形DP
    战略游戏 树形DP
    选课 树形DP
    二叉苹果树 树形DP
    GDOI2016总结
    加分二叉树 树形DP
    [注意]未做的题(最短路)
  • 原文地址:https://www.cnblogs.com/xiong950413/p/13612756.html
Copyright © 2011-2022 走看看