我一直在搜索,我知道有类似的问题,但他们都没有回答这个问题。PHP MySQL查询 - 在日期时间字段中按日期分组
我正在尝试计算员工在给定时间表上工作的总天数。为此,我计算了员工在“计划”表中显示的总行数。只有当员工在同一天安排两次时,我们才会遇到问题。
为了解决这个问题,我想在DATETIME字段中计算总行数并按DATE排序。
目前查询:
$days = mysql_query("SELECT emp_id FROM schedules
WHERE sch_id = '$sch_id'
AND emp_id = '$emp_data[emp_id]'");
$tot_days = mysql_num_rows($days);
我想将它更改为:
$days = mysql_query("SELECT emp_id FROM schedules
WHERE sch_id = '$sch_id'
AND emp_id = '$emp_data[emp_id]'
GROUP BY start_date");
// "start_date" is a datetime field. Need to sort by date only YYYY-MM-DD
$tot_days = mysql_num_rows($days);
有什么想法?
2011-10-13
Oseer
+0
那么第二个查询有什么问题?这不是你想要的吗?如果您正在显示日期并希望订购,只需将'ORDER BY start_date'添加到第二个日期的末尾即可。 –
+0
这将按确切的日期时间排序。日期时间下降到第二个 - 没有两个会相同。这只需要将日期分组,但不包括时间。 –