я написал SQL заявление для расчета дней в течение каждого месяцасчета Oracle дней в месяц
(select count(*) DAYs FROM
(
select trunc(ADD_MONTHS(sysdate,-1),'MM') + level -1 Dates from dual connect by
level <= ADD_MONTHS(trunc(sysdate,'MM'),1)-1 - trunc(sysdate,'MM')+1
) Where To_char(dates,'DY') NOT IN ('SA','SO'))
В настоящее время это утверждение игнорирует по субботам и воскресеньям и высчитывает дни от месяца до SYSDATE (июнь) ,
Июнь имеет 22 дня без выходных, но, к сожалению, мое заявление гласит, что оно имеет 23. Я узнал, что он включает в себя 1 июля, что неправильно.
Знаете ли вы, как я могу рассказать свое маленькое заявление, он вычисляет только дни с месяца, в которые я хочу получить не включая дни из другого месяца?
'TO_CHAR (ДАТА, 'D')' зависит от 'настройки NLS_TERRITORY' - на некоторых территориях понедельник не первый день недели. – MT0
@ MT0 спасибо, это правильно. –