Задать вопрос

Как объединить 2 запроса в один?

Есть код:
<?php
$techs = mysqli_query($db, "SELECT id FROM tech WHERE user='$uzver[id]' AND status!='delete'");
            if($tech = mysqli_fetch_array($techs)) {
                $totalPrice = 0;
                do {
                    $tech_cat = $tech['id'];
   $remont_tech = mysqli_query($db, "SELECT id,data,work_id,sum,master, DATE_FORMAT(data,'%d.%m.%Y') As data FROM remont_tech WHERE tech_id='$tech_cat' AND status='normal' AND  TO_DAYS(NOW()) - TO_DAYS(data) <= 7  ORDER BY DATE(data)");
    foreach ($remont_tech as $oplata) {
    $totalPrice += $oplata['sum'];
    }
                } while($tech = mysqli_fetch_array($techs));
                echo "<div class='title_input'> Оплат за 7 дней:</div> $totalPrice Руб.<br>";
            }
?>

Подскажите как два запроса таких можно объеденить в один
  • Вопрос задан
  • 2365 просмотров
Подписаться 2 Оценить 5 комментариев
Решения вопроса 1
AMar4enko
@AMar4enko
SELECT r.id, r.data, r.work_id, r.sum, r.master, DATE_FORMAT(r.data,'%d.%m.%Y') As data
FROM remont_tech AS r
LEFT JOIN tech AS t ON r.tech_id = t.id
WHERE
t.user='$uzver[id]' AND t.status != 'delete' AND
r.status='normal' AND TO_DAYS(NOW()) - TO_DAYS(r.data) <= 7
ORDER BY DATE(r.data)
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Замечу - если таблицы используют разные движки, то при выполнении объединённого заброса будет наблюдаться только потеря скорости работы.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы