Как исключить выходные дни - Oracle count SQL

SELECT trunc(to_date(substr(CLOSEDATE,1,10), 'DD-MM-YY')),
    substr(FIXCODE, 1, 4),
    COUNT(*)
FROM opencall
WHERE (opencall.status > 15 OR opencall.status = 6)
    AND FIXCODE like 'HPS0%'
    AND trunc(to_date(substr(CLOSEDATE,1,10), 'DD-MM-YY')) BETWEEN '01-JAN-14' AND '24-DEC-14'
GROUP BY trunc(to_date(substr(CLOSEDATE,1,10),'DD-MM-YY')),
    substr(FIXCODE, 1, 4)
ORDER BY trunc(to_date(substr(CLOSEDATE,1,10), 'DD-MM-YY'))

У меня есть этот фрагмент кода, который подсчитывает количество вызовов, возникающих в день, по конкретному коду исправления.

Есть ли способ исключить выходные в 2014 году?

В то время как служба поддержки работает по выходным, количество звонков резко сокращается, и я хотел бы сосредоточиться только на звонках с понедельника по пятницу?


person Anthony Stewart    schedule 15.12.2014    source источник


Ответы (1)


Что-то такое:

...
AND TO_CHAR(to_date(substr(CLOSEDATE,1,10), 'DD-MM-YYYY'),
                         'D', 'NLS_DATE_LANGUAGE=ENGLISH') NOT IN ('1', '7')

В формате D воскресенье - это '1', понедельник - '2', вторник - '3' и так далее. Последний аргумент устанавливает для параметров NLS значение ENGLISH в качестве первого дня недели в зависимости от языкового стандарта.

person Sylvain Leroux    schedule 15.12.2014