powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Группировка против distinct
13 сообщений из 13, страница 1 из 1
Группировка против distinct
    #32268691
Alexus12
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Народ!
ТАкой вопрос:
для получения уникальных значений в запросе
можно использовать 2 варианта:
группировку по всем полям или предикат distinct
Кто пробовал, что исполняется быстрее?
Ведь jet все равно просматривает все записи и при том, и при другом варианте?
...
Рейтинг: 0 / 0
Группировка против distinct
    #32268702
sasha_1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
есть мысль, что группировка по всем поля должна идти дольше, т.к. он
в любом случае сравнивает все поля,
а в случае distinct только пока они (строки одинаковые).
т.е. если первое же поле у строк разное, то distinct пойдет дальше, а
группировка будет просматривать остальные поля тоже.

//написал какую-то чушь, но вроде похоже на правду. :)
...
Рейтинг: 0 / 0
Группировка против distinct
    #32268778
incold
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MS SQL + Acc2000.adp
Была одна такая задача - distinct работал в 1,5 раза дольше группировки.
Глубоко не копал, планы запросов не смотрел (задача была разовая и времени на исследования не было).
...
Рейтинг: 0 / 0
Группировка против distinct
    #32268851
Alexus12
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Интересно, а уважаемые корифеи
Владимир Саныч, Лох Позорный, Senin Viktor
(порядок _не_ ранжирующий ;)
что думают по этому вопросу?..

Спасибо всем отзывающимся!
...
Рейтинг: 0 / 0
Группировка против distinct
    #32268854
Фотография fedd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лох Позорный думает, что дистинкт это и есть груп бай по всем полям
...
Рейтинг: 0 / 0
Группировка против distinct
    #32268874
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я думаю, что Лох Позорный думает, что "дистинкт это и есть груп бай по всем полям" ибо, когда он посмотрел планы выполнения и статистику - оказалось один черт и там и там. Но смотрел он по одной таблице - при других условиях возможно что-то и измениться, но ему смотреть в падлу - он болеет (или уже выздровел?)
...
Рейтинг: 0 / 0
Группировка против distinct
    #32268903
Alexus12
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ага, тогда очень интресна, как дистинкт и груп дали разные результаты в ответе выше
и за каким вообще тогда отдельный дистинкт придуман ;)))
...
Рейтинг: 0 / 0
Группировка против distinct
    #32268945
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>и за каким вообще тогда отдельный дистинкт придуман ;)))

Надо смотреть планы и сами запросы и не забывать о том что дистинкт "работает" со всей строкой сразу, а в групбай нужно указывать поля для группировки - от сюда возможны и беды.
...
Рейтинг: 0 / 0
Группировка против distinct
    #32269154
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Во-первых когда я говорил, что distinct и есть группировка по всем полям - я не имел ввиду скорость выполнения.
Во-вторых я ничего не думаю. Потому как ни хера не получилось выздороветь. Сегодня с утра я стал водкой , т.е. во мне было 40 градусов.
В-третьих - да и хрен его знает... По моему должно быть одинаково. Если и есть какие-либо отклонения - черт его знает откуда они взялись.
...
Рейтинг: 0 / 0
Группировка против distinct
    #32269205
Alexus12
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Большие сочувствия Лоху!..
Поправляйся!..
...
Рейтинг: 0 / 0
Группировка против distinct
    #32269248
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А чего мне сочувствия? У меня в очередной раз получилась двухдневная рабочая неделя .
Щас сижу за компом завернутый в кокон из трех одеял, из кокона торчит один глаз, одна рука (мышку двигать) и сигарета (курить и кнопки нажимать).

Теперь по теме.
Не знаю... Не вижу я причин, по которым Distinct должен быть быстрее или медленнее чем Group By по всем полям. В большинстве случаев должно быть одинакого, если когда нибудь и не так - хз почему и в какую сторону.
Это все равно что спросить, что быстрее - объединять таблицы с помощью Inner Join или с помощью предложения Where. На сложных запросах может аксес и запутается в плане выполнения, а на большинстве - одинаково будет.
...
Рейтинг: 0 / 0
Группировка против distinct
    #32269250
Alexus12
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
НУ что ж спасибо всем!
Хотя так и не понятно что же лучше юзать
На примере: есть куча отчетов , у отчетов есть атрибут дата
Так сроить список из ГОДОВ / месяцев этих дат по
груп бай
или по
дистинкт?
;)
А-ля "кто как хранит запросы" получается ;)))))))
...
Рейтинг: 0 / 0
Группировка против distinct
    #32269388
Ой Вэй
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не совсем на тот вопрос: надо сделать индекс по всем тем и только тем полям, по которым будет делаться GROUP BY (и в том же порядке).
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Группировка против distinct
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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