한 달에 일요일을 찾는 방법은 무엇입니까?한 달에 일요일에서 일요일을 빼는 방법
.. 이것에 일요일의
더 도와주세요 : 4 현재 달을 그리고 난
: 일 월 -sundays
한 달에 일에서이 수를 뺄 필요사이에 날짜를 전달하면 해당 기간의 일요일 카운트를 받아야합니다.
많은 도움을 주셔서 감사합니다.
수니타 ..
한 달에 일요일을 찾는 방법은 무엇입니까?한 달에 일요일에서 일요일을 빼는 방법
.. 이것에 일요일의
더 도와주세요 : 4 현재 달을 그리고 난
: 일 월 -sundays
한 달에 일에서이 수를 뺄 필요사이에 날짜를 전달하면 해당 기간의 일요일 카운트를 받아야합니다.
많은 도움을 주셔서 감사합니다.
수니타 ..
이 시도 : 당신이 할 수있는 기간 사이의 카운트 날짜
select to_char(last_day(sysdate),'dd') -
((next_day(last_day(trunc(sysdate)),'sunday')-7
-next_day(trunc(sysdate,'mm')-1,'sunday'))/7+1) as result
from dual
:
SELECT (next_day(TRUNC(TO_DATE('28/09/2014','DD/MM/YYYY')),'sunday') -
next_day((trunc(TO_DATE('13/09/2014','DD/MM/YYYY'))),'sunday')-7)/7+1 AS RESULT
FROM DUAL
SELECT (
(
TO_CHAR(next_day(last_day(TRUNC(sysdate))-7,'SUN'),'DD')-
TO_CHAR(next_day(last_day(TRUNC(sysdate-30)),'SUN'),'DD')
)/7
)+1
FROM dual;
답장을 보내 주셔서 감사합니다. 그 사이의 날짜를 전달하면 해당 기간 동안 일요일 카운트를 받아야합니다. 도움을 받으십시오. – Sunitha
당신이에서와 날짜에있는 경우, 먼저 계층 쿼리를 사용하여 이들 사이의 모든 날짜를 생성해야합니다. 그런 다음 일요일 만 필터링하십시오.
select count(1)
from (
select start_date + level - 1 as dates
from dual
connect by start_date + level - 1 <= end_date
)
where to_char(dates,'fmday') = 'sunday';
이번 달의 일요일이 아닌 날 수를 계산하려면 해당 월의 첫 번째 날과 마지막 날을 찾아 위와 같은 절차를 따르십시오.
select count(1)
from (
select start_date + level - 1 as dates
from (
select trunc(sysdate,'month') as start_date,
last_day(sysdate) as end_date
from dual
)
connect by start_date + level - 1 <= end_date
)
where to_char(dates,'fmday') != 'sunday';
'TO_CHAR'을 (를) 요일에'format mask'로 사용하면 하루를 줄 것이며 'CASE'를 사용하여 'SUNDAY'인지 확인하고 포함하지 않습니다. 더 자세한 답변을 원하시면'테스트 케이스 '를 제공해주십시오. –