Извлечение дубликата записи
Я хочу получить дубликаты записей из таблицы (n-1 записей из n записей). Как должен выглядеть такой запрос?
пример (имя таблицы = markslist
):
Name Marks
Janny 9
raj 10
raj 10
raj 10
rose 8
Если структура таблицы такая, я хочу получить raj
в два раза (n-1) из 3 (n) раз.
Я пытался использовать рейтинг, но не смог получить желаемый результат.
1 ответ
Во-первых, при разработке таблиц лучше всего иметь первичный ключ, который уникально идентифицирует каждую строку. Если бы у вас был один, это было бы проще.
Самый простой ответ - использовать row_number()
стандартная функция ANSI, доступная в большинстве баз данных:
select t.*
from (select t.*, row_number() over (partition by name order by name) as seqnum
from markslist t
) t
where seqnum > 1;