вернуть значение встречающееся более 2 раз

Печать RSS
504

И
Автор
Пацак
0
Здравствуйте,есть таблица table в ней поле user_id, нужно вернуть все значенения если они встречаются более 2 раз,например:
1100
1200
1006
1000
1200
1200
1100
1100
1100
должно вернуть 4 раза 1100 и 3 раза 1200,к сожалению изменить структуру БД не представляется возможным
Изменил: Изнаур (01.05.2013 / 12:51)
И
Автор
Пацак
0
а без использования php никак?через sql запрос?
E

Пришелец
0
SELECT user_id, count(*) FROM table GROUP BY user_id HAVING count(*) > 1 ORDER BY count(*) - вот как-то так
И
Автор
Пацак
0
4. Eyler, спасибо
И
Автор
Пацак
0
а как мне сделать чтобы выводило все значения?т.е. не указывать в отдельном поле сколько их всего, не
1200 3
а
1200
1200
1200
Изменил: Изнаур (01.05.2013 / 14:35)
И
Автор
Пацак
0
хотя бы подскажите почему ORDER BY `id` ASC/DESC никак не влияет на этот запрос
SELECT * FROM table GROUP BY user_id HAVING count(*) > 1
Изменил: Изнаур (01.05.2013 / 17:31)
E

Пришелец
0
дай дамп таблицы, хоть на десяток записей, напишу решение

Пацак
0
Сейчас, только достану свой хрустальный шар...
Конечно лестно когда тебе присваивают сверх естественные способности. Но все же, вы явно переоцениваете всех нас, молодой человек.
Для начала опишите структуру таблицы

Добавлено через 03:34 сек.
Iznaur95 (1 Мая 2013 / 22:30)
хотя бы подскажите почему ORDER BY `id` ASC/DESC никак не влияет на этот запрос
SELECT * FROM table GROUP BY user_id HAVING count(*) > 1
Что за горбатый велик без колес?
E

Пришелец
0
Уважаемая, Вы к кому обращаетесь? И совсем не по теме влепили минус человеку, который всего лишь пытался помочь, в силу своих возможностей.
E

Пришелец
0
и где же ваше решение? прекрасное, без изъянов, от гуру sql
Стикеры / Теги / Правила / Топ тем / Топ постов / Поиск