[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Большой запрос к БД
Гость_Юрий
Доброго времени суток!
Прошу сильно не пинать. Вопрос может оказаться тупым.
Хотя бы подсказать куда копать, а если кусочек кода, буду очень благодарен.


Суть
справочники
- Таблица Врачей (26)
- Таблица процедур (270)
- Таблица Оказанных процедур (>10 000)

нужно найти сколько каждый врач оказал каждой процедуры

Проблема

При моем запросе скрипт секунд на 40 вешает базу
Оно вроде бы и понятно. если бы у меня был Селерон 433

Однако у меня 18 ядерный ксеон на 24 гига оперативы с блекджеком и шлюхами


// данные в массив
$rasp11100 = "SELECT id,ids,name FROM `spr` WHERE `category`='vrachi' AND `p4`='$filial' ORDER BY ids ";
$rasp11100 = mysql_query($rasp11100) or die(mysql_error());
while ($rasp01100 = mysql_fetch_array($rasp11100))
{
$vrach = $rasp01100["ids"];
$vrachname = $rasp01100["name"];
$vrachi0[$vrach]= $vrachname;
}


$rasp111 = "SELECT ids,name FROM `spr` WHERE `category`='proced' ";
$rasp111 = mysql_query($rasp111) or die(mysql_error());
while ($rasp011 = mysql_fetch_array($rasp111))
{
$idpro = $rasp011["ids"];
$nameproc = $rasp011["name"];
$proced0[$idpro]= $nameproc;
}


// циклы с массива
foreach ($vrachi0 as $vrach => $vrachname) {

echo "<h3>   $vrachname</h3><br>";
include "shab/info_vrach_all2/table_head.php";


foreach ($proced0 as $idpro => $nameproc) {


// основной запрос в базу на кол-во
$rasp11111 = "SELECT ids FROM `uslugi` WHERE `del`='0' AND `usvrachi`='$vrach' AND `filial`='$filial' AND `ok`='1' AND `proced`='$idpro' AND (`data_nach` BETWEEN '$r_date_new' AND '$r_date_new2') ";
$rasp1111 = mysql_query($rasp11111) or die(mysql_error());
$GEO = mysql_num_rows($rasp1111);

if($GEO != "0") { include "shab/info_vrach_all2/table_body.php"; } $GEO = "";

}}}
include "shab/info_vrach_all2/table_footer.php";


Буду благодарен за мысли ) Спасибо!


Быстрый ответ:

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