Я пытаюсь сгруппировать отдельные строки, которые могут быть разбиты другой группой. Если они сломаны, я хочу, чтобы они сгруппировались отдельно.
Итак, у меня есть:
Col1 | Col2
---------------------
| Y |01/JAN/2012
| Y |01/FEB/2012
| N |01/MAR/2012
| Y |01/APR/2012
| Y |01/MAY/2012
Я хочу получить результат:
|col1|col2 |GRP
---------------------
| Y |01/JAN/2012|1
| Y |01/FEB/2012|1
| N |01/MAR/2012|2
| Y |01/APR/2012|3
| Y |01/MAY/2012|3
Как мне добиться это?
Моя текущая попытка такая:
select
Col1,
Col2,
dense_rank() over (partition by Col1 order by Col2 asc) as grp
from
myTABLE
;
, но она объединяет все Y и дает мне порядковый номер, подобный этому:
|col1|col2 |GRP
---------------------
| Y |01/JAN/2012|1
| Y |01/FEB/2012|2
| N |01/MAR/2012|1
| Y |01/APR/2012|3
| Y |01/MAY/2012|4