Ниже приведенный ниже запрос позволяет мне отслеживать, какие услуги были выполнены в диапазоне дат. Я также изменяю его, чтобы показать последние «X» дни.Поиск клиентов без активности в диапазоне дат
Вот моя проблема. Мне нужно найти всех клиентов, у которых не было активности NO в диапазоне дат. Я видел примеры, используя левые внешние соединения (http://www.postgresqlforbeginners.com/2010/11/sql-outer-joins.html), и попытался выполнить его, но результат не показал бы «отсутствующих» сервисов. Мне нужно было увидеть, что «Боб» не видел в прошлые «Х» дни, а не в той деятельности, которая произошла.
Так что, если кто-то может смотреть на это и направить меня к решению, я был бы очень благодарен
Вот запрос:
SELECT groups.name as Office,to_char (notes.date_service,'MM/DD/YY')as DateEntered,
to_char(notes.date_creation,'MM/DD/YY')as DateService,
notes.date_creation - notes.date_service as DateDiff,
services.code, clients.client_id,
clients.name_lastfirst_cs, staff.staff_name_cs, address.addr_county
FROM notes, services, clients, staff, groups, address
WHERE notes.zrud_service = services.zzud_service
AND notes.zrud_client = clients.zzud_client
AND notes.zrud_staff = staff.zzud_staff
AND notes.zrud_group = groups.zzud_group
AND clients.zzud_client = address.zrud_client
AND services.code IN ('10101', '10102', '10201' , '10202','10203','10204','10205','10401','10402','10403','10405') - - <I comment out this line and change it depending on the results I need >
AND groups.name = 'RCE'
AND notes.date_service BETWEEN (now() - '8 days'::interval)::timestamp AND now();
-- this last line is also changed for diferent time spans
Благодаря
Kordirko - спасибо за руководство меня в правильном направлении. Я попытался с последним высказыванием WHERE прокомментировать, чтобы понять, как это произошло, и, как вы сказали. Затем я добавил несколько заметок клиентам, которые появились в отчете, чтобы узнать, исчезнут ли они в другом запросе, и они это сделают. – Detox