일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 혼공SQL
- 이펙티브자바
- jpa
- 알고리즘분석
- SQL쿡북
- MariaDB
- 인프런김영한
- 클린코드
- 도메인 주도 개발 시작하기
- 기술면접
- 자료구조
- 인덱스
- aop
- java
- 자바예외
- vue.js
- react
- 스프링부트와AWS로혼자구현하는웹서비스
- 이펙티브 자바
- 자바
- 이팩티브 자바
- CleanCode
- 네트워크
- AWS
- AWS RDS
- 인프런백기선
- mysql
- 알고리즘
- 자바스터디
- DDD
- Today
- Total
기록이 힘이다.
[혼공 SQL] SQL 프로그래밍 본문
스토어드 프로시저는 MySQL에서 프로그래밍 기능이 필요할 때 사용하는 데이터베이스 개체입니다.
SQL 프로그래밍은 기본적으로 스토어드 프로시저 안에 만들어야 합니다.
IF문
if문의 기본 형식
조건식이 참이라면 'SQL문장들'을 실행하고, 그렇지 않으면 그냥 넘어갑니다.
IF <조건식> THEN
SQL 문장들
END IF;
IF ~ ELSE 문
조건에 따라 다른 부분을 수행합니다. 조건이 참이라면 'SQL문장들1'을 실행하고, 그렇지 않으면 'SQL문장들2'를 실행합니다.
IF <조건식> THEN
SQL 문장들
ELSE <조건식> THEN
SQL 문장들
END IF;
IF문의 활용
CASE문
CASE 문의 기본 형식
IF문은 참 아니면 거짓 두 가지만 있기 때문에 2중 분기라는 용어를 사용합니다. CASE 문은 2가지 이상의 여러가지 경우일 때 처리가 가능하므로 '다중 분기'라고 부릅니다.
CASE
WHEN 조건1 THEN
SQL 문장들1
WHEN 조건2 THEN
SQL 문장들2
WHEN 조건3 THEN
SQL 문장들3
ELSE
SQL 문장들4
END CASE;
CASE문의 활용
WHILE문
WHILE 문의 기본 형식
조건식이 참인 동안에 'SQL문장들'을 계속 반복합니다.
WHILE <조건식> DO
SQL 문장들
END WHILE;
WHILE문의 응용
동적 SQL
상황에 따라 내용 변경이 필요할 때 동적 SQL을 사용하면 변경되는 내용을 실시간으로 적용시켜 사용할 수 있습니다.
PREPARE와 EXECUTE
PREPARE는 SQL 문을 실행하지는 않고 미리 준비만 해놓고, EXECUTE는 준비한 SQL문을 실행합니다. 그리고 실행 후에는 DEALLOCATE PREFARE로 문장을 해제해주는 것이 바람직합니다.
동적 SQL의 활용
PREPARE 문에서는 ?로 향후에 입력될 값을 비워 놓고, EXECUTE에서 USING으로 ?에 값을 전달할 수 있습니다. 그러면 실시간으로 필요한 값들을 전달해서 동적으로 SQL이 실행됩니다.
'SQL' 카테고리의 다른 글
[혼공 SQL] 제약조건으로 테이블을 견고하게 (0) | 2022.12.13 |
---|---|
[혼공 SQL] 테이블 만들기 (0) | 2022.12.13 |
[혼공 SQL] 두 테이블을 묶는 조인 (0) | 2022.12.13 |
[혼공 SQL] 데이터 형식 (0) | 2022.12.13 |
[혼공 SQL] 데이터 변경을 위한 SQL문 (0) | 2022.12.12 |