MySQL-запрос: подсчет повторяющихся значений в действительно огромной таблице

У меня есть эта таблица MySQL:

CREATE TABLE `triple` (
  `id_one` int(11) NOT NULL,
  `id_two` int(11) NOT NULL,
  `id_three` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci

Она содержит почти 10 миллионов строк. Идентификаторы в среднем столбце («id_two») могут появляться в разных строках разное время.

Краткий пример:

id_one    id_two    id_three
1         2         3
2         2         3
3         2         1
68        98        1
1         4         3
2         4         4
4         5         33
6         5         3
90        5         3
34        5         83
9         3         98

Теперь я хочу подсчитать разные идентификаторы («id_two»), которые в этом примере:

id_two     count
2     ->  3
98    ->  1
4     ->  2
5     ->  4
3     ->  1

Как добиться этого эффективно? (Это разовая работа ...) Это первое. Второе, что мне нужно: посчитать, как указано выше, а затем выбрать только идентификаторы, у которых счетчик больше, чем, допустим, 100.

Большое спасибо за помощь!

С уважением Aufwind

5
задан Aufwind 19 April 2011 в 17:40
поделиться