2015-07-09 3 views
2

Как только я задал этот вопрос, но я не получил для этого рабочего решения. У меня есть таблица reults Визуальных так: enter image description hereВремя Разница между лидером и следующим И Diff. между предыдущими

запрос:

$results = $mysqli->query(" 
     SELECT 
T1.bc2014_id, klass, nimi, synd, teamnimi, start, 
TIME(`finish`) AS finish, 
timediff(time(finish), time(start)) AS aeg, 
finish - start as elapsed_time 
FROM bc2014 T1 
INNER JOIN bc2014aeg T2 on T1.bc2014_id = T2.bc2014_id 
WHERE klass = 'DCM (koerakross, mehed al. 14 a.)' 
ORDER BY aeg "); 

PHP таблица:

print '<table class="mytable7">'; 
echo "<tr><th> Class DCM </th></tr>"; 
print '</table>'; 

print '<table class="mytable7">'; 
echo "<tr><th>Place</th><th>ID </th><th>clas </th><th>Name </th><th>Start</th> 
<th>Finish</th><th>Time</th><th>DifLeader</th><th>DifPrevios</th><th>KM/h</th></tr>"; 
while($row = $results->fetch_array()) { 

print '<tr>'; 
print '<td>'.$row["ranking"].'</td>'; 
print '<td>'.$row["bc2014_id"].'</td>'; 
print '<td>'.removeParanthesis($row["klass"]).'</td>'; 
print '<td>'.$row["nimi"].'</td>'; 
print '<td>'.$row["start"].'</td>'; 
print '<td>'.$row["finish"].'</td>'; 
print '<td>'.$row["aeg"].'</td>'; 

print '<td>'.$row["difleader"].'</td>'; 
print '<td>'.$row["difprev"].'</td>'; 
print '<td>'.$row["speed"].'</td>'; 
print '</tr>'; 

} 
print '</table>'; 
$results->free(); 

MySQL раз таблица структура: enter image description here

Информация из MySQL таблица времени: enter image description here

Я не могу использовать разницу во времени между Лидером и между предыдущими. И бонус, чтобы получить работу, рассчитать скорость (км/ч), когда расстояние, скажем, в 15 км

В конце таблице должна выглядеть следующим образом final table here4

+0

так что вы хотите, чтобы вычислить сводку разницы между отделкой и время начала для пользователь ИЛИ я неправильно понял ваш вопрос? –

+0

Я хочу, чтобы таблица выглядела примерно так [таблица] (https://www.dropbox.com/s/l6nxadvyg5gdj2e/Screenshot%202015-07-24%2017.29.16.png?dl=0) – Margus

+0

Возможный дубликат [ Найти разницу между лидером и предыдущим в таблице результатов] (http://stackoverflow.com/questions/29894549/find-difference-between-leader-and-previous-in-results-table) – DarkBee

ответ

0

Я вижу, вы боретесь с этим. Если вы хотите легко, но грязный раствор добавьте эти 4 строки в ЗЕЬЕСТ (после «конца - начать как ELAPSED_TIME»):

if (@bestFinish <= finish, timediff(TIME(finish), TIME(@bestFinish)), '00:00:00') as difleader, 
if (@previousFinish <= finish, timediff(TIME(finish), TIME(@previousFinish)), '00:00:00') as difprev, 
@previousFinish := finish, 
@bestFinish := if (@bestFinish > finish, finish, @bestFinish) 
+0

После 4 строк ситуация такая же [таблица] (https://www.dropbox.com/s/4cw9lvalzhm7syw/Screenshot%202015-07-24%2022.56.06.png?dl=0) – Margus

+0

В phpMyAdmin получите что-то вроде это [php] (https://www.dropbox.com/s/w46q61oliq6lyg3/Screenshot%202015-07-24%2023.20.35.png?dl=0) – Margus

Смежные вопросы