Выберите значение из moday на этой неделе в 18:00 - PullRequest
0 голосов
/ 25 июня 2018

Я пытаюсь получить значения из MySQL только в понедельник на текущей неделе и с 18:00 до 19:00.Как я могу это сделать?

Результат должен быть: 1

m_z_analytics

|id|m_type|date_added         |
|1 |test1 |2018-06-25 18:02:09|
|2 |test2 |2018-06-26 19:44:24|


SELECT COUNT(id) AS id FROM m_z_analytics WHERE
Week(date_added) = Week(CURRENT_TIMESTAMP) AND
date_added >= (NOW() - INTERVAL 7 DAY) AND
date_added < (NOW() - INTERVAL 6 HOUR)

1 Ответ

0 голосов
/ 25 июня 2018

Используйте функцию WEEKDAY() или DAYNAME() для проверки дня недели и HOUR() для проверки времени суток.

SELECT COUNT(*)
FROM m_z_analytics
WHERE date_added BETWEEN NOW() - INTERVAL 1 WEEK AND NOW() - INTERVAL 6 HOUR
AND HOUR(date_added) = 18
AND DAYNAME(date_added) = 'Monday'

Вам не нужна функция WEEK(),поскольку временной интервал сужается до текущей недели.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...