|
MySQL.RU - Webboard
Вернуться
Проблема с GROUP и ORDER (Сергей) 28/07/2011 - 23:30:50
Re: Проблема с GROUP и ORDER (Akina) 29/07/2011 - 12:57:52
Re: Проблема с GROUP и ORDER (Сергей) 29/07/2011 - 15:36:21
Re: Проблема с GROUP и ORDER (Akina) 30/07/2011 - 01:36:43
Re: Проблема с GROUP и ORDER (Сергей) 30/07/2011 - 07:24:27
> Original message text:
> From: Сергей - 28/07/2011 - 23:30:50
> Subject:Проблема с GROUP и ORDER
> -----------------
> Требуется сделать выборку из таблицы товаров:
> Сотня самых тяжелых позиций Price * in_stock
> Товары могут дублироваться и при этом иметь разные названия title и одинаковые keywords при совпадении keywords нужен только тот у которого максимальный вес
> Делал так:
> SELECT *
> FROM (
> SELECT `id`,
> `title`,
> `keywords`,
> (`Price` * `in_stock`) AS `w`
> FROM `products`
> ) AS `t`
> GROUP BY `keywords`
> ORDER BY `w` DESC
> LIMIT 100
>
> Независимо от наличия/отсутствия/режима сортировки GROUP оставляет только первую в порядке добавления в таблицу запись.
> Вопрос как обмануть GROUP?
>
From: Сергей - 29/07/2011 - 15:36:21
Subject:Проблема с GROUP и ORDER
-----------------
Спасибо за ответ.
Очень темперамнтно)
Спасибо за ссылку полезно иметь под рукой.
К сожалению не увидел чем она может помочь в данном случае...
Если вы правда видите в той статье решение то от нескольких букв типа Т1 С1 было бы больше толку чем от стэба.
То что запрос делает не совсем что хотелось я занаю потому написал вопрос.
Что он делает на мой взгляд:
1 Агрегатный подселект делает выборку нужных мне полей плюс формирует поле необходимое для последующей сортировки.
2 Сортирует по заданому полю
3 Оставляет 100 записей
вроде бы все соответствует пожеланиям
Есть еще GROUP вот с ним у меня проблема вероятно есть альтернативное решение но я до него пока ненашел
[Это сообщение - спам!]
Последние сообщения из форума
Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL,
версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
39314
|
|