trunc(date, 'd')와 last_day 를 이용해서 처리
-- 캘린더의 정보와 사용자 정보를 이용하여 주간 근무 가능일수 주회 -- 입력한 날짜를 trunc(date, 'd')로 시작일, trunc(date +7, 'd') -1 로 마지막일을 구해서 처리 SELECT COUNT(*) INTO p_workday_count FROM sfa_calendar sc ,sfa_user_master u WHERE sc.company_code = u.company_code AND u.sfa_user_id = v_user_id AND to_date(sc.cal_date, 'YYYYMMDD') BETWEEN trunc(v_date, 'd') AND trunc(v_date + 7, 'd') - 1 AND sc.free_flag = 0; -- 월간 근무 가능일 수 조회 -- 입력한 날짜를 trunc(date, 'MM')로 시작일, last_day(date)로 마지막일을 구해서 처리 SELECT COUNT(*) INTO p_workday_count FROM sfa_calendar sc ,sfa_user_master u WHERE sc.company_code = u.company_code AND u.sfa_user_id = v_user_id AND to_date(sc.cal_date, 'YYYYMMDD') BETWEEN trunc(v_date, 'MM') AND last_day(v_date) AND sc.free_flag = 0;
반응형
'데이타베이스' 카테고리의 다른 글
오라클의 소스코드에 특정 문자열 검색하기 (0) | 2013.04.17 |
---|---|
오라클 over() 함수 (0) | 2013.04.17 |
오라클 날짜 정보 가지고 놀기 (0) | 2013.03.27 |
오라클의 주의 시작일 변경여부 확인 (0) | 2013.03.26 |
데이터를 주간 집계하기 (0) | 2013.03.26 |