首页 > 解决方案 > Group by 子句 - 只有第一个“组行”填充了值

问题描述

嗨,伙计们,我需要你的帮助!

实际上我有一个 select 语句,其中包含 col1,col2,col3 的组

在此处输入图像描述

但我需要的是,只有“组”的第一行应该显示值。以下行应为空或空白。它应该如下所示:

在此处输入图像描述

那可能吗!?如果是,如何?:-)

谢谢你的帮助!!安雅

标签: sqloraclegroup-by

解决方案


它通常被称为休息。SQL*Plus 有,Oracle Reports 有,Application Express 也有……所以,根据您要在哪里使用它,您有可能通过选择哪些列以声明方式执行它重新打破报告。

这是一个 SQL*Plus 示例。

首先,Scott 的 EMP 表“原样”:

SQL> select deptno, job, ename, sal
  2  from emp
  3  order by deptno, job, ename;

    DEPTNO JOB       ENAME             SAL
---------- --------- ---------- ----------
        10 CLERK     MILLER           1300
        10 MANAGER   CLARK            2450
        10 PRESIDENT KING             5000
        20 ANALYST   FORD             3000
        20 ANALYST   SCOTT            3000
        20 CLERK     ADAMS            1100
        20 CLERK     SMITH             800
        20 MANAGER   JONES            2975
        30 CLERK     JAMES             950
        30 MANAGER   BLAKE            2850
        30 SALESMAN  ALLEN            1600
        30 SALESMAN  MARTIN           1250
        30 SALESMAN  TURNER           1500
        30 SALESMAN  WARD             1250

14 rows selected.

如果你应用休息,那么它看起来像这样:

SQL> break on deptno on job
SQL> select deptno, job, ename, sal
  2  from emp
  3  order by deptno, job, ename;

    DEPTNO JOB       ENAME             SAL
---------- --------- ---------- ----------
        10 CLERK     MILLER           1300
           MANAGER   CLARK            2450
           PRESIDENT KING             5000
        20 ANALYST   FORD             3000
                     SCOTT            3000
           CLERK     ADAMS            1100
                     SMITH             800
           MANAGER   JONES            2975
        30 CLERK     JAMES             950
           MANAGER   BLAKE            2850
           SALESMAN  ALLEN            1600
                     MARTIN           1250
                     TURNER           1500
                     WARD             1250

14 rows selected.

几乎如你所愿。


推荐阅读