1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
| create table a
(id number(2),
ch1 varchar2(2),
ch2 varchar2(2));
insert into a values (1,'a','x');
insert into a values (2,'a','x');
insert into a values (3,'a','x');
insert into a values (4,'b','y');
insert into a values (5,'b','x');
insert into a values (6,'b','z');
insert into a values (7,'c','i');
insert into a values (8,'c','i');
insert into a values (9,'d','j');
insert into a values (10,'e','l');
insert into a values (11,'e','m');
insert into a values (12,'f','f');
insert into a values (13,'f',NULL);
SELECT DISTINCT ch1, DECODE(TOTAL, 1, ch2, '%'), TOTAL
FROM
(SELECT ch1, ch2,
COUNT (DISTINCT ch2) OVER(PARTITION BY ch1) AS TOTAL
FROM a)
;
CH DE
-- --
a x
b %
c i
d j
e %
f f
f |
Partager