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 |
Tags
- gradle 설치
- #{}
- git 명령어
- a href="#" onclick="return false"
- nodejs http
- 자바 예상문제
- templet
- ${}
- MariaDB
- it지원
- 최대값 최소값
- nodejs
- map형태 jsp와 mapper
- REST
- interface default
- SQL
- resultType="hashmap"
- 자바 로또
- git
- 유효성
- 전역객체
- cmd mariaDB
- BCrypt
- 알고리즘
- 포워드 엔지니어링
- $('input [name=
- git message
- container-fluid
- bubblesort
- $(document).on
Archives
- Today
- Total
Rubberduck-Debugging
DECODE 함수 본문
** b.btyped이, 5이면 reboard, 6이면 album, 7이면 bbs를, 그밖엔 board를 'control이란 컬럼으로 출력하라는 말.
sql계의 if-else문이라고 생각하면 쉽다
1 2 3 4 5 6 7 8 9 10 | select b.bcode, b.bname, b.btype, b.ccode, c.cname, decode(b.btype, 5, 'reboard', 6, 'album', 7, 'bbs', 'board') control from board_list b join category c on b.ccode = c.ccode order by ccode, bcode; | cs |
* DTO에 control 컬럼을 추가했다. (DTO는 테이블과 일대일 매칭되지 않아도 된다)
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 31 32 33 34 35 36 37 38 39 40 41 42 | package com.bit.board.admin.model; public class BoardListDto extends CategoryDto { private int bcoce; private String bname; private int btype; private String control; public int getBcoce() { return bcoce; } public void setBcoce(int bcoce) { this.bcoce = bcoce; } public String getBname() { return bname; } public void setBname(String bname) { this.bname = bname; } public int getBtype() { return btype; } public void setBtype(int btype) { this.btype = btype; } public String getControl() { return control; } public void setControl(String control) { this.control = control; } } | cs |
DECODE
- - DECODE 함수는 조건에 따라 데이터를 다른 값이나 컬럼값으로 추출 할 수 있다.
- - DECODE(VALUE, IF1, THEN1, IF2, THEN2...) 형태로 사용 할 수 있다.
- - VALUE 값이 IF1일 경우에 THEN1 값을 반환하고, VALUE 값이 IF2일 경우에는 THEN2 값을 반환한다.
- - DECODE 함수 안에 DECODE함수를 중첩으로 사용 할 수 있다.
아래는 DECODE 함수의 일반적인 예제이다.
1 2 3 4 5 6 7 8 9 10 11 12 13 | -- 부서번호가 10이면 ACCOUNTING, 20이면 RESEARCH, 30이면 SALES -- 나머지는 OPERATIONS를 출력하는 예제 SELECT deptno, DECODE(deptno, 10 , 'ACCOUNTING' , 20 , 'RESEARCH' , 30 , 'SALES' , 'OPERATIONS' ) name FROM dept; DEPTNO NAME ------ ---------- 10 ACCOUNTING 20 RESEARCH 30 SALES 40 OPERATIONS |
아래는 DECODE 함수에서 집계 함수를 사용한 예제이다
1 2 3 4 5 6 7 8 9 10 11 12 | -- 10부서는 급여합계를, 20부서는 최대값을, 30부서는 최소값을 출력하는 예제 SELECT deptno, DECODE(deptno, 10 , SUM (sal), 20 , MAX (sal), 30 , MIN (sal)) sal FROM emp GROUP BY deptno; DEPTNO SAL --------- -------- 30 950 20 3000 10 8750 |
DECODE함수는 집계함수와 함께 통계 데이터를 추출할 때 많이 사용한다.
출처 : http://www.gurubee.net/lecture/1028
'개발자 > 20181127 교육과정' 카테고리의 다른 글
jquery$(""), ${}, #{} 관련 (0) | 2018.12.26 |
---|---|
게시판 만들기 3일차 (0) | 2018.12.24 |
InsertAll() : 여러테이블에 한꺼번에 삽입 (0) | 2018.12.19 |
1. 다음카페형 게시판만들기 Exerd, 클래스생성 (0) | 2018.12.19 |
[알고리즘] 삼항연산자, 최대값 최소값 (0) | 2018.12.17 |