powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Distinct для одного столбца
6 сообщений из 6, страница 1 из 1
Distinct для одного столбца
    #39946967
Shower
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет. Ломаю голову над простенькой табличкой. Проблема получить уникальное значение(Id) по максимальной дате.
Исходные данные :

DateTimeIdMassResult2020-02-26 08:31:28.000202002А42.440.546752020-02-26 08:33:49.000202002A21000.58562020-02-26 08:35:58.000202002A21000.58562020-02-26 08:40:00.000202002A368.160.59572020-02-26 08:52:11.000202002А11000.579552020-02-26 09:08:58.000202002A1900.579552020-02-26 09:11:29.000202002A1/1100.57955

пример того, что нужно получить:

DateTimeIdMassResult2020-02-26 08:31:28.000202002А42.440.546752020-02-26 08:35:58.000202002A21000.58562020-02-26 08:40:00.000202002A368.160.59572020-02-26 09:11:29.000202002A1/1100.57955

Пробовал и Group by и max(DateTime) и select distinct. Заранее спасибо!
...
Рейтинг: 0 / 0
Distinct для одного столбца
    #39946969
Фотография a_voronin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shower,

Так надо было попробовать TOP 1 WITH TIES :

Код: sql
1.
2.
3.
SELECT TOP 1 WITH TIES DateTime, Id, Mass, Result
FROM T
ORDER BY ROW_NUMBER() OVER (PARTITION BY Id ORDER BY DateTime DESC)
...
Рейтинг: 0 / 0
Distinct для одного столбца
    #39946976
Shower
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
a_voronin,

Выполнил запрос

DateTimeIdMassResult2020-02-26 09:08:58.000202002A1900.579552020-02-26 09:11:29.000202002A1/1100.579552020-02-26 08:35:58.000202002A21000.58562020-02-26 08:40:00.000202002A368.160.59572020-02-26 08:31:28.000202002А42.440.546752020-02-26 08:52:11.000202002А11000.57955

Первая и последняя строка остаются не уникальными в столбце Id. Всегда такой результат я и получал, когда думал что на верном пути. Конкретно '%A1' всегда и остается.
...
Рейтинг: 0 / 0
Distinct для одного столбца
    #39946988
Фотография a_voronin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shower,

Вы задачу как сформулировали? " получить уникальное значение(Id) "

А "202002A1" "202002A1/1" -- это очевидно разные значения Id.

Разберитесь с тем, что в вас идентифицирует группу записей и поставьте это в Partition by .
...
Рейтинг: 0 / 0
Distinct для одного столбца
    #39946991
Shower
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
a_voronin
Shower,

Так надо было попробовать TOP 1 WITH TIES :

Код: sql
1.
2.
3.
SELECT TOP 1 WITH TIES DateTime, Id, Mass, Result
FROM T
ORDER BY ROW_NUMBER() OVER (PARTITION BY Id ORDER BY DateTime DESC)



Данное решение верное, спасибо за помощь. Оказывается была проблема в данных в таблице, пользователи использовали кириллицу.
...
Рейтинг: 0 / 0
Distinct для одного столбца
    #39947001
nullin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shower, Бугога, только хотел пост отправить с unicode(
), да обновил страницу!
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Distinct для одного столбца
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]