如果我使用:
SELECT Sec_to_Time(Sum(Time_to_Sec(time_utilize))) as week_time FROM attendance WHERE staff_id = 'ahmed'
它工作正常但我使用时:
SELECT Sec_to_Time(Sum(Time_to_Sec(time_utilize))) as week_time FROM attendance WHERE staff_id = 'ahmed' LIMIT 1, 7
它说:
MySQL返回一个空结果集 (即零行)。 (查询花了0.0004 秒)
虽然出勤表包含近20条针对'admed'的记录............
答案 0 :(得分:0)
这是因为该查询将始终返回'ahmed'的单个记录,这是因为您正在使用SUM聚合。因此,当您执行LIMIT 1,7时,它将返回一个空结果集。
尝试做LIMIT 0,它应该可以工作。
希望这有帮助。
答案 1 :(得分:0)
是SUM是一个聚合函数,因此我们可以使用BETWEEN运算符得到我们想要的结果:
SELECT Sec_to_Time(Sum(Time_to_Sec(time_utilize))) as week_time FROM attendance WHERE staff_id = 'ahmed' AND today BETWEEN '2011-06-1' AND '2011-06-7'