Показывать значение столбца только один раз - PullRequest
0 голосов
/ 29 мая 2019

У меня есть такие данные:

enter image description here

И я хочу показать вот так

enter image description here

Все сотрудники имеют ту же должность, что и менеджер, но я хочу показать один раз.

1 Ответ

0 голосов
/ 29 мая 2019

Вы можете сделать что-то вроде следующего, но вы должны сделать это только для целей отображения:

WITH a (ename, position, deptno) AS (SELECT 'KING', 'Manager', 10 FROM dual 
                                     UNION ALL 
                                     SELECT 'BLAKE', 'Manager', 30 FROM dual 
                                     UNION ALL 
                                     SELECT 'CLARK', 'Manager', 10 FROM dual 
                                     UNION ALL 
                                     SELECT 'ALLEN', 'Manager', 30 FROM dual 
                                     UNION ALL 
                                     SELECT 'WARD', 'Manager', 30 FROM dual)
SELECT ENAME
     , CASE WHEN position = MAX(position) over (ORDER BY ROWNUM 
                                                 ROWS BETWEEN 1 preceding AND 1 preceding) 
            THEN NULL 
            ELSE position 
       END position
     , deptno 
  FROM a 

Это будет отображать NULL для столбца POSITION, если значение такое же, как впредыдущий ряд.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...