【发布时间】:2013-03-16 07:24:47
【问题描述】:
我已经使用 (NOW) 函数来获取当前的TIME 并作为“到达时间”插入到数据库中。
如下图所示:
$sql="INSERT INTO Time(Arrival_Time)
VALUES(NOW())";
类型为时间,插入为;
12:17:29
我需要通过(当前时间 - 到达时间)计算等待时间;
示例:当前时间 (13:15) 到达时间 (12:15)
所以会显示:
Waiting time
1 hour
这是我尝试过的解决方案;
<?php
$conn = mysqli_connect("localhost","root","") or die ("No connection");
mysqli_select_db($conn, "a&e") or die('Could not select database.');
$query = "SELECT Arrival_time, TIMEDIFF(Arrival_time,NOW()) as Waiting_Time FROM Time";
$result = mysqli_query($conn, $query) or die("Invalid query");
echo "<table border='1'>
<tr>
<th>Waiting Time</th>
</tr>";
while ($row = $result->fetch_object()){
echo "<tr>
<td>" . $row->Waiting_Time . "</td>
</tr>";
}
echo "</table>";
mysqli_close($conn);
?>
编辑
$query = "SELECT Arrival_time, TIME_FORMAT(ABS(TIMEDIFF(CURTIME(), Arrival_time)),'%H hours') as Waiting_Time FROM Time";";
显示
Waiting time
3 hours
我将如何使用time 这样如果; waiting_time 超过 3 小时,提示“此患者必须下次见!”。
【问题讨论】:
-
所以倒转时间得到正值??
标签: mysql sql time date-arithmetic