Я хочу подсчитать количество воскресений, происходящих в заданном диапазоне дат, используя MySQL ... Моя проблема - даты, приведенные не в таблице. .all, я хочу, чтобы SQL вычислил его без какого-либо запроса ... например: SELECT DATEDIFF (date1, date2); что, конечно, не требует каких-либо таблиц для запроса. Возможно ли это?Подсчет количества воскресений в заданном диапазоне дат без запроса таблицы
0
A
ответ
0
Да, это возможно.
Предположим, что ваша дата1 больше даты2.
так,
first_sunday = DATE_ADD(@date2, interval (8 - DAYOFWEEK(@date2)) mod 7 DAY)
это воскресенье рядом с @ date2, если @ date2 это воскресенье, first_sunday является @ date2
last_sunday = DATE_ADD(@date1, interval 8 - DAYOFWEEK(@date1) DAY)
это воскресенье рядом с @ date1 даже там, где @ date1 является воскресенье или нет, мы не будем рассчитывать last_sunday
sunday_count = FLOOR(DATEDIFF(last_sunday, first_sunday)/7)
будет вернуть сумму воскресенье от date2 до date1.
Если вы хотите только один запрос, это он:
SELECT FLOOR(DATEDIFF(DATE_ADD(@date1, interval 8 - DAYOFWEEK(@date1) DAY), DATE_ADD(@date2, interval (8 - DAYOFWEEK(@date2)) mod 7 DAY))/7)
+0
спасибо за это, отличная помощь для производительности. –
Смежные вопросы
- 1. Подсчет уникальных значений в заданном диапазоне дат
- 2. Подсчет количества дней в диапазоне дат
- 3. Поиск доступных дат в заданном диапазоне без таблицы календаря
- 4. Запрос на подсчет используемого количества купленного пакета в диапазоне дат
- 5. Подсчет отсутствующей последовательности дат в диапазоне дат
- 6. Подсчет воскресений в C++;
- 7. Подсчет количества записей, в которых дата находится в диапазоне дат?
- 8. Определение количества совпадений «Найти» в заданном диапазоне
- 9. Подсчет количества продаж за каждую дату в диапазоне дат, postgresql
- 10. Подсчет количества ячеек в диапазоне
- 11. SQL, получающий подсчет в диапазоне дат
- 12. Выбор количества записей в диапазоне дат SQL
- 13. Подсчет итогов за сутки в диапазоне дат
- 14. TSQL - подсчет разницы в диапазоне дат
- 15. Подсчет строк на дату в диапазоне дат
- 16. Подсчет уникальных значений в диапазоне дат
- 17. Redis - отслеживание количества отсчетов и запросов в заданном диапазоне datetime
- 18. Подсчет количества диапазонов в серию дат, также диапазон, из таблицы
- 19. Подсчет количества строк, появляющихся в диапазоне
- 20. Подсчет количества чисел в диапазоне ячеек
- 21. Проверка количества выходных дней в диапазоне дат
- 22. находка количества дней существует в диапазоне дат
- 23. Получение количества високосных дней в диапазоне дат
- 24. Проверка количества строк на основе диапазона дат в диапазоне дат
- 25. Расчет количества запланированных дат в диапазоне дат от недельного расписания
- 26. Neo4j: как запросить промежуточную дату при заданном диапазоне дат
- 27. Project Euler 19: подсчет воскресений, Java
- 28. Подсчет числа в заданном диапазоне с помощью O (1) сложности?
- 29. PHP: Получить дату по имени дня в заданном диапазоне дат
- 30. SQL Server - выяснить, активных клиентов в заданном диапазоне дат
Почему вы это делаете в базе данных на всех, если вы не доступ к любым данным? –
Потому что я использую компанию CGI, которая использует sql и javascript ... –