티스토리 뷰
1. WIDTH_BUCKET - 역할
최소값과 최대값을 설정하고 분할 수를 설정하여 어느 위치에 있는지를 반환하는 함수
◈ 구문형식
WIDTH_BUCKET(컬럼,최소값,최대값,분할 수)
2. WIDTH_BUCKET - 기본 테이블
◈ TEST_TABLE_ONE
IDX | NAME | AMT | ID | TEL |
1 | 테스트1 | 1000 | test1 |
|
2 | 테스트2 | 2000 | test2 |
|
3 | 테스트3 | 3000 | test3 | 021-0000-0003 |
4 | 테스트4 | 4000 | test4 | 010-0000-0004 |
5 | 테스트5 | 5000 | test5 | 010-0000-0005 |
3. WIDTH_BUCKET - SQL 문장
◈ SQL
1 2 3 | SELECT AMT ,WIDTH_BUCKET(TO_NUMBER(AMT),1000,5000,2) AS AMT_BUCKET FROM TEST_TABLE_ONE |
◈ 결과 테이블
AMT | AMT_BUCKET |
1000 | 1 |
2000 | 1 |
3000 | 2 |
4000 | 2 |
5000 | 2 |
◈ 설명
AMT 컬럼을 기준으로 1,000~5,000원을 받은 사람들이 있습니다.
이 사람을 WIDTH_BUCKET를 설정해서 2개의 집단으로 나눈다고 하면 최소값은 1,000으로 최대값은 5,000으로 잡고 2집단으로 나누고자 하기 때문에 분할 수는 2가 됩니다.
그러면 위의 함수는
1 ~ 2,500 : 1
2,501 ~ 5,000 : 2
로 나누어서 해당 금액은 1집단에 속하는지 2집단에 속하는지를 표시하게 됩니다
'[개발]프로그래밍 > sql' 카테고리의 다른 글
[oracle] EXTRACT() - 날짜에서 특정정보 추출 (0) | 2019.11.13 |
---|---|
[oracle] ADD_MONTHS - 특정 날짜에 월을 더함 (0) | 2019.11.13 |
[oracle] MOD() - 나눈 나머지 값 반환 (0) | 2019.11.12 |
[oracle] CEIL() - 올림하여 정수값 반환 (0) | 2019.11.12 |
[oracle] BETWEEN AND - 범위에 있는 값 가져오기 (0) | 2019.11.12 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday