MySQL функция сравнения дат



В моей таблице даты хранятся в формате "2010-08-26 09:00:00" так гггг-ММ-ДД. Я хотел бы выбрать все поля, которые имеют поле даты, которое является "сегодня", поэтому между 2010-08-26 00:00:01 и 2010-08-26 23:59:59.



Просто использование большего и меньшего, чем операторы, не работает, есть ли у MySQL некоторые встроенные функции сравнения дат, которые могут это сделать?



EDIT: я должен был упомянуть, что даты хранятся в виде datetime полей

580   5  

5 ответов:

... WHERE DATE(field)=CURDATE()

Или

... WHERE DATE(field)=CURRENT_DATE

Или

... WHERE DATE(field)=CURRENT_DATE()

Выбери один!

Я бы предложил [...] WHERE DATEDIFF(CURDATE(),date_field) = 0 [...]

Просто рекомендация на будущее: хранить дату в столбце varchar почти всегда очень плохая идея.

Используя функцию DATE(), Вы должны иметь возможность построить значение для сравнения:

DATE(2010-08-26 12:13:24)

Вернет только раздел даты для вас ie. 2010-08-26.

Comments

    Ничего не найдено.