Реклама на сайте Advertise with us

По Мускулю подскажите

Расширенный поиск по форуму
 
Новая тема Новая тема   
Автор
Поиск в теме:



С нами с 14.07.04
Сообщения: 221
Рейтинг: 59

Ссылка на сообщениеДобавлено: 24/09/05 в 21:29       Ответить с цитатойцитата 

Есть строки с полями id (primary key), _group, value. Нужно найти id строк с максимальными значениями поля value в каждой группе group. Запрос типа SELECT id, MAX(value) FROM mytable GROUP BY _group требуемого результата не дает, поскольку id возвращается не строки, содержащей максимальное значение value, а первой строки в группе group.
Извращения типа SELECT id, MAX(value) as mv FROM mytable GROUP BY _group HAVING value=mv не работают.

Можно как то все решить одним запросом. мускуль 3.23 таблицы типа MyISAM

0
 

Genuine Quality

С нами с 28.08.05
Сообщения: 652
Рейтинг: 910

Ссылка на сообщениеДобавлено: 24/09/05 в 22:13       Ответить с цитатойцитата 

а если так:

SELECT id, MAX(value) FROM mytable GROUP BY _group ORDER BY value LIMIT 1

те. в группах сортируем по убыванию. а написанная тобой выше часть запроса выберет первую строку из групы

зы: а group by вообще работает?

0
 



С нами с 14.07.04
Сообщения: 221
Рейтинг: 59

Ссылка на сообщениеДобавлено: 24/09/05 в 22:24       Ответить с цитатойцитата 

Нет, так тоже не выведется нужный id.

Только что методом тыка сам нашел ответ:
SELECT id FROM mytable GROUP BY referer_id ORDER BY value DESC

Спасибо, вопрос снят.

0
 
Новая тема Новая тема   

Текстовая реклама в форме ответа
Заголовок и до четырех строчек текста
Длина текста до 350 символов
Купить рекламу в этом месте!


Перейти:  



Спонсор раздела Стань спонсором этого раздела!

Реклама на сайте Advertise with us

Опросы

Рецепт новогоднего блюда 2022



Обсудите на форуме обсудить (11)
все опросы »