Подсчет записей в MySQL

  • Автор темы Автор темы monk
  • Дата начала Дата начала

monk

Новичок
Подсчет записей в MySQL

Чтобы подсчитать сколько записей в базе (mySQL) обязательно в массив записывать или мона по другому обойти.
Просто вот если надо посчитать кол записей где например d='test' отдельно
где d='primer'
где d='new'
и т.д.
Для каждого делать запрос в базу отдельно и подсчитывать?
 
Спасибо!
Вот так делаю:

$db_new = "SELECT COUNT(*) FROM $table_wapcat where dir='1'";
$result = mysql_query($db_new);
$b = mysql_fetch_row($result);
$m1 = $b[0];

$db_new = "SELECT COUNT(*) FROM $table_wapcat where dir='2'";
$result = mysql_query($db_new);
$b = mysql_fetch_row($result);
$m2 = $b[0];

и таких штук 20.
Работает такая хрень медленно.. Да и вообще граматно так делать?
 
На мой взгляд, дублировать без нужды почти идентичный код раз по 20 всегда неграмотно.
Дельный совет дал hash, только опечатался малость в ключевом слове...
Пример реализации:
PHP:
$db_new = "SELECT dir, COUNT(*) FROM $table_wapcat GROUP BY dir ORDER BY dir";
$result = mysql_query($db_new);
while ($b = mysql_fetch_row($result)) {
   $m[$b[0]] = $b[1];
}
 
Сверху