Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Аватара для Coutty

Кот Ти


Сообщения: 7318
Благодарности: 1204

Профиль | Отправить PM | Цитировать


Delirium, сопротивление СУБД мешает Параметр в COUNT() - имя столбца. И считать надо всё по одному столбцу. Я полчаса сидел и решал эту задачку. Дошёл уже до UNION'ов и JOIN'ов, но как-то не осилил. Почему-то подзапросы моя MySQL'ка не обрабатывает, а без них ничего и не выходит.
sure777, может быть всё-таки средствами php? Два запроса:
Код: Выделить весь код
SELECT COUNT(*) AS `m` FROM `users` WHERE `sex`='m';
SELECT COUNT(*) AS `all` FROM `users`;
а потом одно делить на другое; из единицы вычесть результат деления.
Либо так:
Код: Выделить весь код
SELECT COUNT(*) AS `num` FROM `users` WHERE `sex`='m' UNION SELECT COUNT(*) FROM `users`;
Тогда вернёт столбец num с двумя строками - кол-во мужчин и общее количество пользователей. Можно добавить и строку с женщинами, если имеется и третий пол - неопределённый.
Но посчитать проще средствами php)

Отправлено: 04:01, 02-11-2009 | #3