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

Как объединить 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>";
            }
?>

Подскажите как два запроса таких можно объеденить в один
  • Вопрос задан
  • 2370 просмотров
Подписаться 2 Оценить 5 комментариев
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 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
Замечу - если таблицы используют разные движки, то при выполнении объединённого заброса будет наблюдаться только потеря скорости работы.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽