Zobacz ten powiązany pytanie.
Jak wspomnieli inni, twoim głównym problemem nie jest rozliczenie czasu. Kilka opcji, jak sobie z tym poradzić:
-
Użyj funkcji, aby przekonwertować DateTime na Date. Nie polecam tej opcji, ponieważ prawdopodobnie spowoduje to, że funkcja nie do sarge .
-
Rozwiń swoje
BETWEEN
aby wyraźnie uwzględnić ostatni moment dnia:(uwaga:jest to najnowsza możliwa wartość, jaką może przechowywać MS SQL, nie wiem, czy MySQL ma tę samą wartość)SELECT * FROM `punches` WHERE `date` BETWEEN '08/20/11 00:00:00.000' AND '08/31/11 23:59:59.997'
-
Użyj
<
dla górnej wartościSELECT * FROM `punches` WHERE `date` >= '08/20/11' AND `date` < '09/01/11'
Właściwie uważam, że to ostatnie jest łatwiejsze w większości sytuacji.
Przypuszczam, że możesz zrobić inne rzeczy, takie jak zmiana typu danych kolumny, ale założyłem tutaj, że jesteś zainteresowany tylko zmianą zapytania.
** Zastrzeżenie:jestem facetem od MS SQL, nie MySQL