zoukankan      html  css  js  c++  java
  • 根据表中的行创建一个分隔列表

    6.10 根据表中的行创建一个分隔列表
    
    ---要求将emp表中的ename,用逗号间隔合并在一起显示。如:CLARK,KING,MILLER
    
    listagg:
    
    把字符串连在一起
    
    SELECT deptno,
           SUM(sal) AS total_sal,
           listagg(ename, ',') within GROUP(ORDER BY ename) AS totoal_ename
      FROM emp
     GROUP BY deptno;
    
    
    listagg(ename, ',')   第一个参数 第2个是分隔符(自定义)
    
    
    within GROUP(ORDER BY ename 当前分组内
    
    SQL>  SELECT empno,
      2         ename,
      3         deptno,
      4         sal,
      5         SUM(sal) over(PARTITION BY deptno) AS total_sal,
      6         listagg(ename, ',') within GROUP(ORDER BY ename) over(PARTITION BY deptno) AS total_ename
      7    FROM emp
      8   WHERE deptno IN (10, 20);
    
         EMPNO ENAME          DEPTNO        SAL  TOTAL_SAL TOTAL_ENAME
    ---------- ---------- ---------- ---------- ---------- ------------------------------
          7782 CLARK              10       2450       8750 CLARK,KING,MILLER
          7839 KING               10       5000       8750 CLARK,KING,MILLER
          7934 MILLER             10       1300       8750 CLARK,KING,MILLER
          7876 ADAMS              20       1100      10875 ADAMS,FORD,JONES,SCOTT,SMITH
          7902 FORD               20       3000      10875 ADAMS,FORD,JONES,SCOTT,SMITH
          7566 JONES              20       2975      10875 ADAMS,FORD,JONES,SCOTT,SMITH
          7788 SCOTT              20       3000      10875 ADAMS,FORD,JONES,SCOTT,SMITH
          7369 SMITH              20        800      10875 ADAMS,FORD,JONES,SCOTT,SMITH
    
    已选择8行。
    
    主查询不分组的时候,分析函数取分组的数据

  • 相关阅读:
    spark学习进度18(SparkSQL读写)
    查看及修改centos的系统时间
    第3章 串
    linux就该这么学 简介
    1 快速入门
    rocketMQ实战与原理解析 简介
    绪论
    数据结构java版 第4版 叶核亚著 简介
    数据结构java语言版 简介
    数据结构与问题求解java版 简介
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13352143.html
Copyright © 2011-2022 走看看