Да, так как использование DISTINCT (иногда согласно комментарию) приводит к результатам, которые будут упорядочены Сортировка сотен записей требует времени. Попробуйте GROUP BY для всех ваших столбцов, иногда это может привести к тому, что оптимизатор запросов выберет более эффективный алгоритм (по крайней мере, с Oracle я заметил значительный прирост производительности).
Плохо ли использовать Different?
Ну, неправильное использование "различных" не только скрывает реальную проблему (повторяющиеся записи в таблицах, отсутствие условия в предложении on), как обсуждалось выше, но также снижает производительность запросов… Это приведет к значительному увеличению стоимости ввода-вывода (логического чтения) запроса.
Различные замедляют запросы?
Очень немногие запросы могут выполняться быстрее в режиме SELECT DISTINCT, и очень немногие будут выполняться медленнее (но ненамного медленнее) в режиме SELECT DISTINCT, но для более позднего случая вполне вероятно что приложению может потребоваться изучить повторяющиеся случаи, что перекладывает бремя производительности и сложности на приложение.
Что лучше использовать: different или GROUP BY?
В MySQL DISTINCT выглядит немного быстрее, чем GROUP BY, если поле не проиндексировано. DISTINCT только удаляет повторяющиеся строки, но GROUP BY, похоже, дополнительно их сортирует.
Почему мы не должны использовать Different в SQL?
Если выбрать «отличное» для «исправить» проблему, вы, вероятно, получите взамен плохую производительность. GROUP BY позволяет использовать агрегатные функции, такие как AVG, MAX, MIN, SUM и COUNT. DISTINCT просто удаляет дубликаты.