Показать первые 10 записей по идентификатору пользователя - PullRequest
0 голосов
/ 30 января 2020

У меня есть база данных с записями с идентификаторами столбцов, пользователями и датами. Я хочу показать только первые 10 записей, начиная с самой ранней даты для каждого пользователя

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

Вы знаете, как я могу go об этом?

Спасибо

Ответы [ 2 ]

0 голосов
/ 30 января 2020

Использование row_number():

select t.*
from (select t.*,
             row_number() over (partition by user order by date) as seqnum
      from t
     ) t
where seqnum <= 10;
0 голосов
/ 30 января 2020

Вы можете использовать аналитическую функцию ROW_NUMBER следующим образом:

SELECT *
FROM
    (
        SELECT
            T.*,
            ROW_NUMBER() OVER(
                PARTITION BY USERS
                ORDER BY DATES
            ) AS RN
        FROM YOUR_TABLE T
    )
WHERE RN <= 10

Cheers !!

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