Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Построить запрос где будут выбраны различные(по определенному полю) 5 строк  [new]
AspUser
Member

Откуда:
Сообщений: 145
Добрый день! Есть таблица комментариев для клипов(т.е. один клип комментирует множество пользователей). Структура:
CREATE TABLE [dbo].[ClipComments] (
    [Id]          INT           IDENTITY (1, 1) NOT NULL,
    [Comment]     NTEXT         NOT NULL,
    [UserName]    VARCHAR (256) NOT NULL,
    [ClipId]      INT           NOT NULL,
    [DateComment] DATETIME      NOT NULL,
    [Description] NTEXT         NULL,
    PRIMARY KEY CLUSTERED ([Id] ASC),
    FOREIGN KEY ([ClipId]) REFERENCES [dbo].[Clips] ([Id])
);


Можно ли построить запрос который даст один последний по дате комментарий для 5-ти различных ClipId ?
13 ноя 14, 13:58    [16840081]     Ответить | Цитировать Сообщить модератору
 Re: Построить запрос где будут выбраны различные(по определенному полю) 5 строк  [new]
Glory
Member

Откуда:
Сообщений: 104751
AspUser
Можно ли построить запрос который даст один последний по дате комментарий для 5-ти различных ClipId ?

Можно. Стройте.
13 ноя 14, 14:00    [16840092]     Ответить | Цитировать Сообщить модератору
 Re: Построить запрос где будут выбраны различные(по определенному полю) 5 строк  [new]
iap
Member

Откуда: Москва
Сообщений: 47142
AspUser,

нумеруйте записи в порядке убывания даты для каждого ClipId в подзапросе,
выбирайте оттуда записи с первым номером, а в самом внешнем запросе берите TOP(5)
13 ноя 14, 14:03    [16840120]     Ответить | Цитировать Сообщить модератору
 Re: Построить запрос где будут выбраны различные(по определенному полю) 5 строк  [new]
AspUser
Member

Откуда:
Сообщений: 145
ума хватает чтобы написать только
SELECT TOP(5) * FROM [ClipComments] 
, если не трудно может покажите как ?
13 ноя 14, 14:09    [16840174]     Ответить | Цитировать Сообщить модератору
 Re: Построить запрос где будут выбраны различные(по определенному полю) 5 строк  [new]
Akina
Member

Откуда: Зеленоград, Москва, Россия
Сообщений: 21249
OVER(PARTITION BY ClipId ORDER BY DateComment DESC)
13 ноя 14, 14:27    [16840311]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить