[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: сортировка данных из mysql
RioDezz
Здравствуйте!

Есть 2 таблицы: users и group.
Надо вывести список групп (из `group`), но отсортировать по кол-во участников (в `group` не храниться кол-во). В таблице `users` строка `group_id` содержит `id` группы из таблицы `group`.

Помогите, пожалуйста!
Valick
SELECT g.`group_name`, u.`co_group`
FROM `group` g LEFT JOIN
(SELECT `group_id` `id`, COUNT(`group_id`) `co_group`
FROM `users`
GROUP BY `group_id`) u
USING(`id`)
ORDER BY u.`co_group`


_____________
Стимулятор ~yoomoney - 41001303250491
paul85
SELECT 
g.*,
count(u.group_id) AS members
FROM
`group` AS g
LEFT JOIN
users AS u
ON
g.id=u.group_id
GROUP BY
g.id
ORDER BY
members DESC;

Типа вот так, без всяких подзапросов.

Valick
paul85, можно, только сначала пройдет соединение таблиц например 100х100000, а потом пройдет группировка, а в моем случае сначала группировка, а потом соединение 100х100.

_____________
Стимулятор ~yoomoney - 41001303250491
paul85
Valick, да, действительно, я этого не учел!
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.