<?php
$HiTemp = mysql_query("SELECT * FROM weerdata WHERE Date='$date' ORDER BY HiTemp DESC, Time ASC LIMIT 1", $db);
if ($date) {
while ($HiTemp_result = mysql_fetch_array($HiTemp)){
echo "<td>". $HiTemp_result['HiTemp'] . "</td><td>" . $HiTemp_result['Time'] . "</td>";
}
}
else {
echo "$error";
}
?>
De query haalt uit mijn database van een bepaalde dag de HiTemp met de daarbij behorende Time. Deze Time (tijd) staat in de database als 00:00:00 (H, i, s), maar ik wil dat de echo geen seconden weergeeft, dus: 00:00 (H, i). Hoe doe ik dit?
Maar hoe combineer ik dat dan met de SELECT * FROM weerdata etc.. want hij zoekt eerst naar de hoogste waarde van HiTemp. De daarbij behorende tijd moet worden omgevormd. Iets met UNION?
Het is inmiddels gelukt om de tijd van uren:minuten:seconden om te zetten naar uren:minuten. Dit met behulp van het volgende:
<?php
$HiTemp = mysql_query("SELECT date_format(Time, '%H:%i') as shorttime FROM weerdata WHERE Date='$date'", $db);
if ($date) {
while (list($shorttime) = mysql_fetch_array($HiTemp)){
echo "$shorttime";
}
}
else {
echo "$error";
}
?>
Hij geeft nu als resultaat alle tijdstippen van een bepaalde datum.
Nou is het nog de bedoeling om de tijd behorende bij de hoogste waarde van HiTemp om te zetten naar uren:minuten. De query voor de hoogste waarde van HiTemp met bijbehorende tijd is als volgt:
<?php
$HiTemp = mysql_query("SELECT * FROM weerdata WHERE Date='$date' ORDER BY HiTemp DESC, Time ASC LIMIT 1", $db);
if ($date) {
while ($HiTemp_result = mysql_fetch_array($HiTemp)){
echo $HiTemp_result['HiTemp'] . "<br />" . $HiTemp_result['Time'] . "<br />";
}
}
else {
echo "$error";
}
?>