투케이2K

110. (Oracle/오라클) from 서브쿼리 , group by, min 사용해 부서 연령 (나이) 범위별 최소 값 출력 실시 - 10대부터 40때까지 범위 기준 본문

OracleDB

110. (Oracle/오라클) from 서브쿼리 , group by, min 사용해 부서 연령 (나이) 범위별 최소 값 출력 실시 - 10대부터 40때까지 범위 기준

투케이2K 2021. 2. 23. 08:51

/* =========================== */

[ 개발 환경 설정 ]

개발 툴 : Toad

개발 언어 : Oracle

/* =========================== */

/* =========================== */

[소스 코드]

 

/*
[from 서브쿼리 , group by, min 사용해 부서 연령 (나이) 범위별 최소 값 출력 실시 - 10대부터 40때까지 범위 기준]
1. from 서브쿼리에서 연령 별 범위에 해당하는 데이터를 만듭니다 (10대, 20대 ... )
2. 메인 쿼리에서 group by 조건을 부서, 나이 범위로 지정해 그룹을 만들고 min 최소 연령을 조회합니다
*/

select 부서, 나이범위, min(나이)
    from (select t_dept as 부서, t_name as 이름, to_number(t_age) as 나이, 
                case when to_number(t_age) >=10 and to_number(t_age) <20 then '10대'
                     when to_number(t_age) >=20 and to_number(t_age) <30 then '20대'
                     when to_number(t_age) >=30 and to_number(t_age) <40 then '30대'
                     when to_number(t_age) >=40 and to_number(t_age) <50 then '40대' 
                else '만족없음' 
                end as 나이범위
            from test_user
         where to_number(t_age) between 10 and 49)
group by 부서, 나이범위
order by 부서 desc; 

/* =========================== */

[결과 출력]

/* =========================== */

/* =========================== */

[요약 설명]

1. from 서브쿼리에서 연령 별 범위에 해당하는 데이터를 만듭니다 (10대, 20대 ... )

2. 메인 쿼리에서 group by 조건을 부서, 나이 범위로 지정해 그룹을 만들고 min 최소 연령을 조회합니다

/* =========================== */

반응형
Comments