Общие > Базы данных

[mysql] Запрос с сортировкой

<< < (2/5) > >>

shred:
И вообще, group by ведет себя не совсем однозначно. Если писать group by поле - отстреливает дубликаты, если group by поле, поле, поле наворочено и удобно сортирует. Полагаю так и должно быть :)

fidget:
> Если при этом выводить и дату, то она не соответствует нику и результату заезда (ник, как ни странно, соответствует результату)

оно берет первое попавшееся значение для каждого y.id.

Одним запросом не сделаешь. Сначала выбираешь все значения id и минимального, а потом соответсвующие этим значениям остальные данные.

shred:
Интересно, а не в mysql\'e это можно было бы сделать одним запросом? (скажем в pgSQL)

fidget:
Все зависит от того как в других СУБД реализована выборка при GROUP BY, т.е возвращаются ли там данные соответствующие минимальному значению или нет. Этот момент в стандарте SQL не описан, потому каждая СУБД реализует так как ей удобно.

Даже в том-же MySQL начиная с версии 4.1 это можно одним запросом реализовать, но не раньше.

Меняздесьдавнонет:
В принципе, можно и одним запросом, поскольку проблема только в уникальности участников.
То есть, сделать примитивнийший запрос, который выбирает заезды сортируя по времени, и джойня имя игрока. Естественно, без лимита, или с запасом - скажем, 100.
И выводить, запоминая тех, кто уже был.
Криво, но зато просто :-)

Навигация

[0] Главная страница сообщений

[#] Следующая страница

[*] Предыдущая страница

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 
Перейти к полной версии