使用sql查询比较时间

使用sql查询比较时间,sql,time,comparison,Sql,Time,Comparison,我正在使用php和mysql开发考勤管理系统。我想显示一个人每天花费少于9小时的总次数timein和timout存储在数据库中。我使用了以下查询: SELECT * FROM presence WHERE 'timeout' - 'timein' < 9 AND uid=".$uid1[$i]." AND date BETWEEN'".$date1."' AND '".$date2."'"); echo "<td align='center'>".mysql_num_ro

我正在使用php和mysql开发考勤管理系统。我想显示一个人每天花费少于9小时的总次数
timein
timout
存储在数据库中。我使用了以下查询:

SELECT * FROM presence 
WHERE 'timeout' - 'timein' < 9 AND  uid=".$uid1[$i]."
AND date BETWEEN'".$date1."' AND '".$date2."'");

echo "<td align='center'>".mysql_num_rows($recordset)."</td>"; 

$lateout1 = mysql_num_rows($recordset);
从状态中选择*
其中“timeout”-“timein”<9和uid=“.uid1[$i]”
日期介于“.$date1.”和“.$date2.””之间;
echo“.mysql\u num\u行($recordset)。”;
$lateout1=mysql\u num\u行($recordset);
但是没有显示任何内容。请帮助我显示所有用户每天花费少于9小时的天数。

尝试使用

select uid,count(uid) as no_of_days from presence 
where (time_to_sec(timediff(timeout, timein )) / 3600)<9  
and date> $date1 and date< $date2 
group by uid. 
选择uid,将(uid)计算为从出现起的天数
其中(time_至_sec(timediff(timeout,timein))/3600)$date1和date<$date2
按uid分组。

我对php不太清楚,但您不认为您需要将查询结果存储在记录集中。欢迎使用StackOverflow!。
timein
timeout
列的数据类型是什么?更好的方法是发布
创建表
语句,用于
状态
表。我在程序中使用了记录集,但我错把它忘了这里。谢谢@PranavKevadiya,一切顺利!!非常感谢