我一直在搜索,我知道有類似的問題,但他們都沒有回答這個問題。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);
有什麼想法?
那麼第二個查詢有什麼問題?這不是你想要的嗎?如果您正在顯示日期並希望訂購,只需將'ORDER BY start_date'添加到第二個日期的末尾即可。 –
這將按確切的日期時間排序。日期時間下降到第二個 - 沒有兩個會相同。這隻需要將日期分組,但不包括時間。 – Oseer