Найти количество вхождений строки - PullRequest
2 голосов
/ 10 октября 2019

У меня есть таблица с дублирующимися строками, и мне нужно извлечь эти дублирующиеся строки в одиночку. Ниже приведен пример таблицы, которую я имею:

my_table:

ID   Offer  
1     10
2     10
1     12
1     10
2     20
2     10

Далее я хочу посчитать количество предложений для каждого идентификатора. т. е. мой окончательный результат должен быть:

ID    Offer    Count
1      10       1
2      10       1
1      12       1
1      10       2
2      20       1
2      10       2

Как вы можете видеть, количество должно увеличиваться в зависимости от того, сколько раз предложение появляется для каждого идентификатора.

Я пробовал что-то вроде:

select id,offer,count(offer) over (partition by id);

Но это просто дает общее количество конкретного предложения для этого идентификатора и не является результатом, который я ищу.

Любая помощь очень ценится!

1 Ответ

2 голосов
/ 10 октября 2019

Вы можете использовать ROW_NUMBER:

select id,offer,ROW_NUMBER() over (partition by id, offer order by rownum)
from tab
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...