① 요일번호(1:일요일~7:토요일)
SELECT TO_NUMBER(TO_CHAR(TO_DATE(ATTN_DATE,'YYYYMMDD'),'D'))
FROM EMPLOYEE_ATTEND
WHERE ATTN_DATE LIKE '200612%'
AND SNO='76990101'
② 날짜+7
SELECT TO_NUMBER(TO_CHAR(TO_DATE(ATTN_DATE,'YYYYMMDD'),'DD'))+7
FROM EMPLOYEE_ATTEND
WHERE ATTN_DATE LIKE '200612%'
AND SNO='76990101'
③ (날짜+7)-요일번호
SELECT TO_NUMBER(TO_CHAR(TO_DATE(ATTN_DATE,'YYYYMMDD'),'DD'))+7-TO_NUMBER(TO_CHAR(TO_DATE(ATTN_DATE,'YYYYMMDD'),'D'))
FROM EMPLOYEE_ATTEND
WHERE ATTN_DATE LIKE '200612%'
AND SNO='76990101'
④ ((날짜+7)-요일번호)/7
SELECT (TO_NUMBER(TO_CHAR(TO_DATE(ATTN_DATE,'YYYYMMDD'),'DD'))+7-TO_NUMBER(TO_CHAR(TO_DATE(ATTN_DATE,'YYYYMMDD'),'D')))/7
FROM EMPLOYEE_ATTEND
WHERE ATTN_DATE LIKE '200612%'
AND SNO='76990101'
⑤ TRUNC(((날짜+7)-요일번호)/7) [출처] 오라클 주(WEEK)구하기|작성자 공부중
SELECT TRUNC((TO_NUMBER(TO_CHAR(TO_DATE(ATTN_DATE,'YYYYMMDD'),'DD'))+7-TO_NUMBER(TO_CHAR(TO_DATE(ATTN_DATE,'YYYYMMDD'),'D')))/7)
FROM EMPLOYEE_ATTEND
WHERE ATTN_DATE LIKE '200612%'
AND SNO='76990101'
'SQL > ORACLE' 카테고리의 다른 글
오라클 테이블 복사하기 (0) | 2016.05.20 |
---|---|
DataBase-SQLPLUS(oracle 9i에서 향상된 DML과 DDL(다중테이블 insert-무조건insert, insert all, insert first, Pivoting insert) (0) | 2016.05.17 |
이력 테이블에서 최종 데이터만 조회하기 (0) | 2016.03.18 |
오라클에서 개행문자 제거하기 (0) | 2016.03.18 |
[ORACLE] BETWEEN AND, 그리고 IN 연산자 (0) | 2015.11.20 |
제 8절 ORDER BY 절 (0) | 2015.11.20 |
Oracle 9i #7. 단일 행 함수 (0) | 2015.10.08 |
[order by CASE]oracle order by 질문입니다 (0) | 2015.10.08 |