[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Выбрать, где кол. более 2х одинаковых
inpost
SELECT COUNT(*)  as `cnt`,`ip_reg` FROM `dat_user` GROUP BY `ip_reg`

Обычный запрос, но надо выбрать записи, где cnt >1, я помню, что в конце надо дописать какую-то команду... но хоть убейте, не помню какую... сижу учебник перелистываю, может вспомню. Если кто помнит - помогите :)



Спустя 8 минут, 50 секунд (7.09.2011 - 22:17) qaz333 написал(а):
SELECT COUNT(*)  as `cnt`,`ip_reg` FROM `dat_user` WHERE `cnt` >'1'GROUP BY `ip_reg`

Спустя 3 минуты, 7 секунд (7.09.2011 - 22:20) inpost написал(а):
WHERE - идёт до группировки, воспринимает `cnt` - как ячейку . Это совсем не то, что надо. Необходимо выборку сделать уже после того, как сгруппируются данные.

Спустя 7 минут, 55 секунд (7.09.2011 - 22:28) qaz333 написал(а):
а, точно вы запрос совсем неправильно составили што в вашем случае означают
`cnt`,`ip_reg` и `dat_user`

Спустя 4 минуты, 32 секунды (7.09.2011 - 22:32) inpost написал(а):
С такого-то IP зарегистрировано 100 пользователей, с такого - 1 пользователь.
Мне надо отбросить одинарных пользователей.

И ещё, интересно, чем же он неправильный?

Спустя 6 минут, 22 секунды (7.09.2011 - 22:39) Игорь_Vasinsky написал(а):
а в phpMyAdmin - устроить поиск и посмотреть запрос как смотриться ohmy.gif

Спустя 28 минут, 44 секунды (7.09.2011 - 23:08) Игорь_Vasinsky написал(а):
Цитата
WHERE - идёт до группировки, воспринимает `cnt` - как ячейку .

Вот и пускай
Цитата
Это совсем не то, что надо. Необходимо выборку сделать уже после того, как сгруппируются данные.

а какая разница ? пускай сначала отсеятся все строки с cnt<1, а потом группируются.

SELECT  `cnt`,`ip_reg`, COUNT(*) FROM `dat_user` WHERE `cnt` > 1 GROUP BY `ip_reg`


может сработает, не тестил.

вот разрыл http://www.mysql.ru/docs/man/Counting_rows.html

Спустя 7 минут, 28 секунд (7.09.2011 - 23:15) Invis1ble написал(а):
inpost
SELECT COUNT(*) `cnt`, `ip_reg` 
FROM `dat_user`
GROUP BY `ip_reg`
HAVING `cnt` > 1

Спустя 8 минут, 9 секунд (7.09.2011 - 23:23) Игорь_Vasinsky написал(а):
Invis1ble
поссле последнего мастер класса, больше не спорю wink.gif

Спустя 27 минут, 14 секунд (7.09.2011 - 23:50) inpost написал(а):
Игорь_Vasinsky
"что в конце надо дописать какую-то команду"
WHERE, это не вконце.
"HAVING `cnt` > 1" - это то, что я вспоминал! Я использовал её месяца 2 назад, в избранном посеял, и скрипт не помню, где использовал... просто слово забылось...



Invis1ble
Именно оно! Спасибо.

Спустя 4 минуты, 8 секунд (7.09.2011 - 23:55) Игорь_Vasinsky написал(а):
inpost
а мой запрос не даст нужного эффекта?

Спустя 21 минута, 37 секунд (8.09.2011 - 00:16) inpost написал(а):
Игорь_Vasinsky
`cnt` - нет такой ячейки smile.gif
COUNT(*) AS `cnt` - потом идёт ссылка на cnt, это мы сумму так прозвали.

Спустя 59 секунд (8.09.2011 - 00:17) Игорь_Vasinsky написал(а):
понятненько.


_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
Быстрый ответ:

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