Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- sql
- eGovFramework
- jsp
- 함수
- html
- jQuery
- POI
- 오류
- 태그
- 과정평가형
- Java
- controller
- CSS
- mybatis
- Oracle
- array
- 암호화
- input
- javascript
- TO_DATE
- JVM
- spring
- select
- 정의
- json
- Ajax
- eGov
- 개념
- was
- web.xml
Archives
- Today
- Total
web developer
[sql] oracle date(날짜) 요일 구하기 본문
728x90
728x90
oracle 날짜 요일 구하기
1-1) 요일 구하기 (정수)
SELECT TO_CHAR(SYSDATE, 'yyyy-mm-dd') AS "날짜"
, TO_CHAR(SYSDATE, 'd') AS "요일"
FROM dual;

TO_CHAR 함수의 포맷 인자에 "d"를 입력하면 해당 날짜의 요일이 정수로 반환된다.
* 1:일요일, 2:월요일, 3:화요일, 4:수요일, 5:목요일, 6:금요일, 7:토요일
1-2) 주말(토요일, 일요일) 구하기
SELECT CASE WHEN TO_CHAR(SYSDATE,'D') IN ('1','7') // 2023-09-24
THEN '주말'
ELSE '평일' END AS WEEK_DAY
FROM DUAL;

2) 요일 구하기 (한글)
SELECT TO_CHAR(SYSDATE, 'yyyy-mm-dd') AS "날짜"
, TO_CHAR(SYSDATE, 'dy') AS "요일1"
, TO_CHAR(SYSDATE, 'day') AS "요일2"
FROM dual

3) 특정 기간의 주말 구하기 ( 20230901 ~ 20230924 )
SELECT CASE WHEN TO_CHAR(TO_DATE(DT),'D') IN ('1','7')
THEN '주말'
ELSE '평일' END AS WEEK_DAY
FROM (
SELECT TO_CHAR(TO_DATE(ST_DT, 'YYYYMMDD') + LEVEL - 1, 'YYYYMMDD') AS DT
FROM ( SELECT '20230901' AS ST_DT,'20230924' AS END_DT
FROM DUAL )
CONNECT BY LEVEL <= TO_DATE(END_DT, 'YYYYMMDD') - TO_DATE(ST_DT, 'YYYYMMDD') + 1
);

728x90
728x90
'SQL > Oracle SQL' 카테고리의 다른 글
[sql] 각 컬럼의 데이터를 합산한 쿼리 (0) | 2024.06.20 |
---|---|
[oracle] DBMS_LOB 데이터 타입 및 함수 (0) | 2024.01.11 |
[oracle] WITH절 (0) | 2022.11.22 |
[sql] ORA-01861: literal does not match format string 에러 (0) | 2022.05.02 |
[sql] executeQueryForObject returned too many results. (0) | 2022.04.22 |