Программы "Простой софт" www.prostoysoft.ru

ВНИМАНИЕ! РЕКЛАМНЫЕ СООБЩЕНИЯ И ГИПЕРССЫЛКИ В ФОРУМЕ ЗАПРЕЩЕНЫ (посты удаляются автоматически)
Текущее время: 22.11.2024 14:46

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 9 ] 
Автор Сообщение
 Заголовок сообщения: Вопрос по отчету
СообщениеДобавлено: 11.02.2014 15:22 
Не в сети

Зарегистрирован: 11.02.2014 15:06
Сообщения: 4
Здравствуйте!
Пытаюсь создать отчет в котором выводилось бы общее количество посетителей за какой-то период времени?
Например: Есть гостиница в которую каждый день заселяются люди, живут в ней какое-то время и выселяются.
ФИО Дата заселения Дата выселения
Иванов 30.01.2014 02.02.2014
Петров 01.02.2014 10.02.2014
Сидоров 20.02.2014 05.03.2014
Медведев 13.01.2014 20.01.2014
Барсуков 05.03.2014 10.03.2014

Вопрос: Какую формулу применять в генерации отчета, что бы вычислить количество проживающих за запрашиваемый период (в данном случае 01.02.2014 - 28.02.2014), а также среднесуточное значение (общее количество проживающих деленное на количество дней в запрашиваемом периоде)?
P.S. База данных на access


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вопрос по отчету
СообщениеДобавлено: 11.02.2014 18:26 
Не в сети

Зарегистрирован: 25.04.2012 10:09
Сообщения: 2233
Откуда: Жуковский, Московская область
Код:
SELECT COUNT(1) AS [Всего проживающих],
- INT (- DateDiff ('d', <FILTER1> , <FILTER2>) / [Всего проживающих]) AS [Среднесуточное значение]
FROM tblMain WHERE VisitDate >= <FILTER1> AND VisitDate <= <FILTER2>

Вместо VisitDate в запросе подставить соответственно ваши даты заселения и выселения.
Но вообще-то это вопрос не по программе, а по SQL, и задавать их лучше на профильных форумах, напр. sql точка ru


Вложения:
Комментарий к файлу: Настройки отчета
report_settings.jpg
report_settings.jpg [ 272.1 КБ | Просмотров: 64225 ]
Комментарий к файлу: Финальный отчет
report.jpg
report.jpg [ 76.13 КБ | Просмотров: 64225 ]

_________________
90% ответов на ваши вопросы находятся в руководстве, разделах "Вопросы" и "Видео" на нашем сайте.
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вопрос по отчету
СообщениеДобавлено: 12.02.2014 09:22 
Не в сети

Зарегистрирован: 11.02.2014 15:06
Сообщения: 4
Спасибо! Помогло.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вопрос по отчету
СообщениеДобавлено: 12.02.2014 15:19 
Не в сети

Зарегистрирован: 25.04.2012 10:09
Сообщения: 2233
Откуда: Жуковский, Московская область
bmv50 писал(а):
Спасибо! Помогло.
Ну а как иначе !? Не за что.

_________________
90% ответов на ваши вопросы находятся в руководстве, разделах "Вопросы" и "Видео" на нашем сайте.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вопрос по отчету
СообщениеДобавлено: 21.02.2014 11:22 
Не в сети

Зарегистрирован: 11.02.2014 15:06
Сообщения: 4
Неправильные итоги по указанной формуле. Поясню на примере: так на 01.02.14 в гостинице проживало 20 человек, 02.02.14 в гостиницу заехало 5 человек и 3 съехало, осталось 20+5-3=22, далее 03.02.14 заехало 2 и съехало 8, осталось 22+2-8=16. Итого за период с 01.02.14 по 03.02.14 общее количество которое проживало 20+22+16=58 человек. Предыдущая же формула считала так: 20 чел. (01.02.14) + 5 - 3 (02.02.14) + 2 - 8 (03.02.14) = 16. Вопрос: как слепить формулу по первому примеру?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вопрос по отчету
СообщениеДобавлено: 21.02.2014 11:56 
Не в сети

Зарегистрирован: 25.04.2012 10:09
Сообщения: 2233
Откуда: Жуковский, Московская область
Лепят лепешки, а мы решаем вашу проблему! Учел ваши специфические замечания:
Код:
SELECT COUNT(1) AS [Всего проживающих], - INT (- DateDiff ('d', <FILTER1> , <FILTER2>) / [Всего проживающих]) AS [Среднесуточное значение]
FROM tblMain WHERE
(DateIn BETWEEN CDate(<FILTER1>) AND CDate(<FILTER2>))
OR
(DateOut BETWEEN CDate(<FILTER1>) AND CDate(<FILTER2>))
OR
(DateIn < CDate(<FILTER1>) AND (DateOut > CDate(<FILTER2>) OR DateOut IS NULL))

DateIn - дата заезда
DateOut - дата выезда
Также учитывается вариант, когда дата заезда раньше даты начала выборки, а выезд еще не произошел (дата выезда в таблице не указана).

Без ф-ции CDate почему-то не работает.

_________________
90% ответов на ваши вопросы находятся в руководстве, разделах "Вопросы" и "Видео" на нашем сайте.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вопрос по отчету
СообщениеДобавлено: 21.02.2014 22:49 
Не в сети

Зарегистрирован: 11.02.2014 15:06
Сообщения: 4
Извиняйте за лепешки :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вопрос по отчету
СообщениеДобавлено: 22.02.2014 20:01 
Не в сети

Зарегистрирован: 25.04.2012 10:09
Сообщения: 2233
Откуда: Жуковский, Московская область
Отпишитесь по результату

_________________
90% ответов на ваши вопросы находятся в руководстве, разделах "Вопросы" и "Видео" на нашем сайте.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 9 ] 

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 9


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB