Да, но будьте осторожны при использовании между датами.
BETWEEN '20090101' AND '20090131'
действительно интерпретируется как 12:00 или
BETWEEN '20090101 00:00:00' AND '20090131 00:00:00'
поэтому пропустит все, что произошло в день 31 января. В этом случае вам придется использовать:
myDate >= '20090101 00:00:00' AND myDate < '20090201 00:00:00' --CORRECT!
или
BETWEEN '20090101 00:00:00' AND '20090131 23:59:59' --WRONG! (see update!)
ОБНОВЛЕНИЕ : Вполне возможно, что записи будут созданы в течение последней секунды дня с датой и временем 20090101 23:59:59.997
!!
По этой причине подход BETWEEN (firstday) AND (lastday 23:59:59)
не рекомендуется.
Вместо этого используйте подход myDate >= (firstday) AND myDate < (Lastday+1)
.
Хорошая статья по этому вопросу здесь .