[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Статистика в бд
GUNS
Добрый день!

Делаю статистику по полям бд


<?
include"connect.php";// подключаюсь к серверу
$query= "SELECT COUNT(*) FROM models where codfirm=1";
$kol = mysql_fetch_array(mysql_query($query));
echo'<FONT size="3" color="#006400"><b>Количество моделей фирмы LG: <ins>'.$kol[0].'</ins></FONT><br><br>';
$query= "SELECT COUNT(*) FROM models where len=200";
$kol = mysql_fetch_array(mysql_query($query));
echo'<FONT size="3" color="#006400">Длинна которых 200: <ins>'.$kol[0].'</ins></FONT><br><br>';
$query= "SELECT COUNT(*) FROM models where ves<80";
$kol = mysql_fetch_array(mysql_query($query));
echo'<FONT size="3" color="#006400">Количество моделей вес которых меньше 80: <ins>'.$kol[0].'</ins></FONT><br><br>';
?>


ну и так далле
работает нормально но возникают сомнения откуда вопросы такого типа

1) Не повредит ли это работе сервера (так как полей в бд у меня много и следовательно запросов будет не менее 30)
2) не затормощит ли много запросов работу сервака
3) мой подход к реализации статистики правильный или я вообще делаю не так?

Большое спасибо за помощь
Nikitian
Ставьте индексы на поля codfirm, len, ves. После их установки ответы:
1) Зависит от частоты запросов и объёмов базы. Если запрос выполняется 2 секунды, а делать вы его будете каждую секунду, то повредит )))
Для проверки качества запроса подставляйте перед запросом explain и смотрите результат.
2) см. условие из п.1
3) Смотря что хотите получить. Можно сделать всё одним запросом, склеив эти запросы union all. Разницы особой не будет, кроме того, что сетевой интерфейс (ну или как у вас соединение с бд идёт) будет чуточку свободнее. Это экономия на спичках, которая вряд ли вам необходима.
Guest
Nikitian большое вам спасибо
Быстрый ответ:

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