Получить данные между двумя датами на MySQL - PullRequest
1 голос
/ 26 апреля 2010

Как я могу получить значения между двумя датами.

Я хочу получить значения между 2010-01-02 и 2010-01-04.

Пример:

Value DateTime
A     2010-01-01 14:55:12
B     2010-01-02 14:55:12
C     2010-01-03 14:55:12
D     2010-01-04 14:55:12
E     2010-01-05 14:55:12

Спасибо!

Ответы [ 2 ]

2 голосов
/ 26 апреля 2010

Посмотрите на

expr МЕЖДУ min И max

Если expr больше или равно мин и expr меньше или равно max, BETWEEN возвращает 1, иначе возвращает 0.

/

Для достижения наилучших результатов при использовании МЕЖДУ со значениями даты или времени, вы должны используйте CAST () для явного преобразования значения для желаемого типа данных. Примеры: если вы сравниваете DATETIME с два значения ДАТА, преобразовать ДАТУ значения в DATETIME значения. Если вы используете строковая константа, такая как '2001-1-1' в сравнении с датой, бросьте Строка до ДАТЫ.

1 голос
/ 25 июля 2011

Я знаю, что ответ уже принят, но я решил добавить еще кое-что к тому, что упомянул @astander. Недавно я ответил на сообщение, касающееся запросов даты и полезного способа извлечения более полезной информации из дат с использованием измерения даты.

См. Следующий вопрос StackOverflow и посмотрите на мой ответ ...

Выберите все месяцы в пределах данного диапазона дат, включая месяцы со значениями 0

...