Мне нужна помощь с запросом в MySQL и PHP

Надеюсь, у вас все хорошо.

У меня есть таблица в моей базе данных с именем times, в этой таблице всего 18 полей, в таблице зарегистрированы повторные грузовики.

На грузовике записывается: идентификатор, дата, смена, грузовик, положение шин и время обслуживания.

Я пытаюсь рассчитать время обслуживания для каждой шины, но единственный способ сделать это - получить консультацию, указав сегодняшнюю дату, а затем сообщить мне, обслуживался ли грузовик несколькими шинами, и если да, то Разделите время внимания регистрации первого грузовика на количество шин, то есть на количество раз, когда этот грузовик был зарегистрирован в ту же дату.

Итак, как вы могли бы сделать запрос в mysql и php, который способен подсчитать, сколько раз грузовик был зарегистрирован на дату x, и в зависимости от того, сколько раз грузовик, который принимал переменную времени внимания, делился между Общее количество шин.

Я оставляю то, что у меня есть:

Текущий запрос:


<table>
  <tr>
    <td>ID</td>
    <td>FECHA</td>
    <td>TURNO</td>
    <td>FLOTA</td>
    <td>EQUIPO</td>
    <td>POSICIÓN</td>
    <td>TIEMPO DE ATENCIÓN</td>
  </tr>

<?PHP

$sql=mysql_query("select tiempos.* from tiempos order by fecha ASC");
while($res=mysql_fetch_array($sql)){        

    $id=$res["id"];
    $fecha=$res["fecha"];
    $turno=$res["turno"];
    $flota=$res["flota"];
    $equipo=$res["equipo"];
    $pos=$res["pos"];
    $ti_attenequi=$res["ti_attenequi"];

?>  
 <tr>
    <td><?php echo $id; ?></td>
    <td><?php echo $fecha; ?></td>
    <td><?php echo $turno; ?></td>
    <td><?php echo $flota; ?></td>
    <td><?php echo $equipo; ?></td>
    <td><?php echo $pos; ?></td>
    <td><?php echo $ti_attenequi; ?></td>
 </tr> 
  <?php
}
  ?>
</table>

В настоящее время вся эта информация поступает из таблицы, называемой -time-, и в другой форме я сохраняю эту информацию. без проблем.

Затем, с одной стороны, я думал об использовании некоторого условия с php и создании нового столбца, который называется - время на шину - и там, что время, которое мне нужно рассчитать, сохраняется.

1
задан 28.11.2019, 18:10
1 ответ

Если я понимаю хорошо твой вопрос, в чем ты нуждаешься, является статьей group by

select id, fecha, turno, flota, equipo, posicion, SUM(ti_attenequi) as ti_attenequi FROM tiempos group by flota, fecha
2
ответ дан 01.12.2019, 10:40
  • 1
    Я только что протестировал эту консультацию, но меня складывает все время atenció n из-за camió n, консультация tendrí в который брать дату сначала и рассказывать количество раз, что - camió n потом разделять время atenció n из-за каждого реестра, который находится из-за camió n и в дату. – estrada 28.11.2019, 18:55
  • 2
    Podrí схвати давать мне данные о примере, чтобы понимать лучше твой вопрос? – Alexander Vidaurre Arroyo 28.11.2019, 19:03
  • 3
    ok, данные о примере, другая вещь время atenció n эта в часы: camió n: 220250 posició n: 1 время atenció n: 1 дата: 2019-11-28. тогда camió n смоги иметь x количество реестров из-за dí в, изменись это posició n, тогда идея - что, если у команды есть 2 реестра dí в 2019-11-28, которые разделяли бы время down первого реестра между тогда полным серьезным количеством с этим таким примером: 1 час между / два зарегистрировал = 0.5 часов – estrada 28.11.2019, 19:09
  • 4
    Как я понимаю, колонна ti_attenequi представляет время внимания грузовика, не шины. Тогда консультация deberí чтобы быть así: select пойдите, датируй, смена, флот, ti_attenequi/COUNT (флот) схвати tiempo_por_llanta FROM времена group by флот, датируй – Alexander Vidaurre Arroyo 28.11.2019, 19:20
  • 5
    вперед переменной ti_attenequi / этот характер - остальные? / – estrada 28.11.2019, 19:26