MySQL выберите дату, равную сегодня
Я пытаюсь запустить инструкцию mysql select, где она смотрит на сегодняшнюю дату и возвращает только те результаты, которые были зарегистрированы в этот текущий день. В настоящее время я пробовал следующее, но это, похоже, не работает.
SELECT users.id, DATE_FORMAT(users.signup_date, '%Y-%m-%d')
FROM users
WHERE users.signup_date = CURDATE()
Я изменил мой SELECT
об этом, спасибо, ребята.
SELECT id FROM users WHERE DATE(signup_date) = CURDATE()
3 ответа:
SELECT users.id, DATE_FORMAT(users.signup_date, '%Y-%m-%d') FROM users WHERE DATE(signup_date) = CURDATE()
этот запрос будет использовать индекс, если у вас это
signup_date
полеSELECT users.id, DATE_FORMAT(users.signup_date, '%Y-%m-%d') FROM users WHERE signup_date >= CURDATE() && signup_date < (CURDATE() + INTERVAL 1 DAY)
Похоже, вам нужно добавить форматирование в
WHERE
:SELECT users.id, DATE_FORMAT(users.signup_date, '%Y-%m-%d') FROM users WHERE DATE_FORMAT(users.signup_date, '%Y-%m-%d') = CURDATE()
посмотреть SQL Скрипка с демо