1

Тема: Выбрать тех у кого менее или более 5 (одним запросом ?)

Есть две таблицы. Пользователи и Объявления.
Нужно выбрать таких пользователей у которых объявлений менее или более 5 к примеру.

Как можно одним запросом это сделать?

2

Re: Выбрать тех у кого менее или более 5 (одним запросом ?)

Поскольку дампа ты так и не дал то вот
Подробности тут http://dev.mysql.com/doc/refman/5.0/en/select.html

=== Tbl Dump

CREATE TABLE IF NOT EXISTS `objavlenija` (
  `id` int(5) NOT NULL,
  `text` longtext NOT NULL,
  KEY `id` (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
INSERT INTO `objavlenija` (`id`, `text`) VALUES
(1, 'Klizma pochti ne polzovannaja'),
(1, 'Rropam chajnik, ne dorogo'),
(1, 'Gvozdi, 3kg (rzhavie)'),
(1, 'Noski, optom i v roznicu'),
(1, 'Sahar (rafinat), nochju deshevle'),
(1, 'Stiralnaja mashinka OKA'),
(1, 'Stul (kozhanij)'),
(1, 'Prodaju analizi prizivnikam'),
(2, 'Vzarvu mozg liubogo, ne gorogo'),
(3, 'prodam 3 bilita na konchert'),
(3, '3 HDDx250Gb, garantija god'),
(3, 'Materinskja plata (krasivaja)'),
(3, 'Valim les (kolima)'),
(3, 'Stroim zemlinki, pensioneram skidki');
CREATE TABLE IF NOT EXISTS `polzovateli` (
  `id` int(2) NOT NULL auto_increment,
  `fname` varchar(255) NOT NULL,
  `lname` varchar(255) NOT NULL,
  PRIMARY KEY  (`id`),
  UNIQUE KEY `id` (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=5 ;
INSERT INTO `polzovateli` (`id`, `fname`, `lname`) VALUES
(1, 'Vasia', 'Pupkin'),
(2, 'Vladimir', 'Putin'),
(3, 'Ivan', 'Ivanov'),
(4, 'Monika', 'Levinski');

=== SQL

SELECT pol.id, pol.fname, pol.lname, count( obj.id ) as countid
FROM `objavlenija` AS obj, `polzovateli` AS pol
WHERE pol.id = obj.id
GROUP BY pol.id
HAVING countid > 4
ORDER BY countid DESC
LIMIT 0 , 30

3

Re: Выбрать тех у кого менее или более 5 (одним запросом ?)

Спасибо!
сделал.