![]() |
Модераторы: skyboy |
![]() ![]() ![]() |
|
DooZ |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 206 Регистрация: 25.11.2005 Репутация: нет Всего: 1 |
Здравствуйте,
что-то не пойму, есть запрос SELECT id, id_subcategory FROM images WHERE id_category='1' GROUP BY id_subcategory ORDER BY id DESC должен возвращать значения с большего ИД (order by) в целом выборка работает, но ID не сортируются выдается первый ИД что найдет (наименьший) подскажите где ошибка? как запрос изменить? заранее спасибо |
|||
|
||||
Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 0 Всего: 130 |
Не работал с мускулом, но всё равно спрошу: зачем GROUP BY? Если его убрать?
-------------------- There's nothing left but silent epitaphs. |
|||
|
||||
eXcile |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 168 Регистрация: 8.2.2007 Репутация: нет Всего: 5 |
попробуйте так
Это сообщение отредактировал(а) eXcile - 26.5.2010, 13:18 --------------------
Не становитесь рабом шаблона [Винсент Ван Гог] |
|||
|
||||
Zloxa |
|
|||
![]() Чо? ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3473 Регистрация: 12.9.2008 Репутация: 33 Всего: 161 |
если не использовать аггрегат для поля, не укзаанного в груп бай - будет возвращаться ЛЮБОЕ значение, вне зависимости от порядка сортировки. это ДОКУМЕНТИРОВАНО. Это сообщение отредактировал(а) Zloxa - 27.5.2010, 07:24 -------------------- Достоверно известно, что 89% людей доверяют статистике взятой с потолка ![]() |
|||
|
||||
eXcile |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 168 Регистрация: 8.2.2007 Репутация: нет Всего: 5 |
max() возвращает наибольшее значение из выборки
а требуется я так понимаю массив всех значений, начиная с наибольшего. Distinct отфильтрует дубликаты поля id_subcategory и используя order by отсортирует значения id --------------------
Не становитесь рабом шаблона [Винсент Ван Гог] |
|||
|
||||
Zloxa |
|
|||
![]() Чо? ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3473 Регистрация: 12.9.2008 Репутация: 33 Всего: 161 |
eXcile, на сколько я могу судить по документации, приведенный тобой запрос синтаксически не верен. По кр. мере я нигде не нашел, что select_expr может содержать ключевое слово disticnt и это будет значить то, что ты описал. Если ты мне укажешь соответствующее место в документации, буду тебе крайне признателен. А до тех пор все сказанное тобой я воспринимаю не иначе как пафосный чес ламо.
Что же касается отсутствия сортировки.. я скорее поверю что ТС не правильно сформулировал свои ожидания, нежели что MySQL действительно забыл отсортировать выборку. Скорее всего ТС сортировал именно для того, чтобы получить последний по рангу id внутри категории, т.е. максимальный. Это сообщение отредактировал(а) Zloxa - 26.5.2010, 12:15 -------------------- Достоверно известно, что 89% людей доверяют статистике взятой с потолка ![]() |
|||
|
||||
eXcile |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 168 Регистрация: 8.2.2007 Репутация: нет Всего: 5 |
Zloxa, да в коде была ошибка, подредактировал.
ЗЫ: свои восприятия в отношении другой личности, оставьте при себе --------------------
Не становитесь рабом шаблона [Винсент Ван Гог] |
|||
|
||||
Zloxa |
|
|||
![]() Чо? ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3473 Регистрация: 12.9.2008 Репутация: 33 Всего: 161 |
а теперь внимательно подумай что вернет тебе твой запрос.... особенно если id - pk если я оставлю при себе, как же другим ламо узнать что ты вводишь публику в заблуждение? Уж больно уверенным тоном ты туфту вещаешь. Это сообщение отредактировал(а) Zloxa - 26.5.2010, 14:25 -------------------- Достоверно известно, что 89% людей доверяют статистике взятой с потолка ![]() |
|||
|
||||
eXcile |
|
||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 168 Регистрация: 8.2.2007 Репутация: нет Всего: 5 |
в таком случае надобность группировки по id вообще отпадает, так как в этом поле и так будут уникальные значения. но то что id= primary key не было сказано. учитывая такие условия можно использовать
в выборке будет, отсортированные поля id(pk) начиная с наибольшего, с учетом id_category='1' и соответственно отфильтрованные дубликаты для id_subcategory --------------------
Не становитесь рабом шаблона [Винсент Ван Гог] |
||||
|
|||||
Zloxa |
|
|||
![]() Чо? ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3473 Регистрация: 12.9.2008 Репутация: 33 Всего: 161 |
Где ты видишь группировку по ID? садись, два. Этот запрос вернет уникальные значения id_subcategory для id_category='1' и только. Сортировка? Ты пробовал этот запрос? Не знаю на счет маськи, а оракл и ms sql руганутся на такой ордербай. eXcile, если ты не в теме, лучше спрашивай, а не учи -------------------- Достоверно известно, что 89% людей доверяют статистике взятой с потолка ![]() |
|||
|
||||
eXcile |
|
||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 168 Регистрация: 8.2.2007 Репутация: нет Всего: 5 |
а возврат уникальных значений не есть выборка этого селекта? http://sql.itsoft.ru/select/
всегда считал это выборкой, естественно, пробовал запустить как на мускул так и на оракл --------------------
Не становитесь рабом шаблона [Винсент Ван Гог] |
||||
|
|||||
Zloxa |
|
||||
![]() Чо? ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3473 Регистрация: 12.9.2008 Репутация: 33 Всего: 161 |
балабол
MS:
Возврат уникальных значений это не тот результат, который ожидает ТС. видать ты действительно туговат, я сказал что ты абсолютно не корректно описал результат выборки а не то что ты это назвал выборкой. Это сообщение отредактировал(а) Zloxa - 27.5.2010, 12:12 -------------------- Достоверно известно, что 89% людей доверяют статистике взятой с потолка ![]() |
||||
|
|||||
![]() ![]() ![]() |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | MySQL | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |