728x90
반응형
Chapter 4. SQL 고급 문법
4.1 MySQL의 데이터 형식
- 정수형 : 소수점이 없는 숫자이며, TINYINT, SMALLINT, INT, BIGINT 등이 있음
- 문자형 : 고정형 문자형인 CHAR, 가변형 문자형인 VARCHAR가 있음
- 실수형 : 소수점 아래 7자리까지 표현되는 FLOAT와 소수점 아래 15자리까지 표현되는 DOUBLE이 있음
- 날짜형 : DATE(날짜만저장, YYYY-MM-DD형식), TIME(시간만 저장, HH:MM:SS 형식), DATETIME(날짜 및 시간 저장)
▶ 변수 앞에는 @를 붙임
USE market_db;
SET @myVar1 = 5; # 변수선언
SET @myVar2 = 4.25; # 변수선언
SELECT @myVar1; # 5
SELECT @myVar1 + @myVar2; # 9.2500000000
SET @txt = '가수 이름 ==> ';
SET @height = 166;
SELECT @txt, mem_name FROM member WHERE height > @height;
- LIMIT에는 변수를 사용할 수 없음
- 이를 해결하기 위해 PREPARE와 EXCUTE를 사용
▶ 데이터 형식을 변경하는 형 변환 함수에는 CAST(), CONVERT()가 있음
# 형식
CAST ( 값 AS 데이터_형식 [ (길이) ] )
CONVERT ( 값, 데이터_형식 [ (길이) ] )
4.2 두 테이블을 묶는 조인
- 조인(Join) : 두 개의 테이블을 서로 묶어서 하나의 결과를 만들어 내는 것
- 내부 조인(inner join) : 두 테이블을 조인할 때, 두 테이블에 모두 지정한 열의 데이터가 있어야 함
- 외부 조인(outer join) : 두 테이블을 조인할 때, 1 개의 테이블에만 데이터가 있어도 결과가 나옴
- 상호 조인(cross join) : 한쪽 테이블의 모든 행과 다른 쪽 테이블의 모든 행을 조인시키는 기능
- 자체 조인(self join) : 자신이 자신과 조인된다는 의미로, 1개의 테이블을 사용
<관련 중요 용어>
용어 | 설명 |
관계 | 두 테이블이 서로 연관되는 것 |
기본 키-외래 키 관계 | 두 테이블이 일대다 관계로 연결되기 위한 조건 |
별칭(alias) | 조인에서 테이블의 이름을 짧게 표현 |
DISTINCT문 | 중복된 열의 값을 1개만 표현하는 구문 |
LEFT OUTER JOIN | 왼쪽 테이블의 모든 값이 출력되는 조인 |
RIGHT OUTER JOIN | 오른쪽 테이블의 모든 값이 출력되는 조인 |
FULl OUTER JOIN | 왼쪽 또는 오른쪽 테이블의 모든 값이 출력되는 조인 |
CREATE TABLE ~ SELECT |
4.3 SQL 프로그래밍
▶ IF문
IF <조건식> THEN
SQL 문장
END IF;
▶ CASE문
▶ WHILE문 활용
- ITERATE[레이블] : 지정한 레이블로 가서 계속 진행
- LEAVE[레이블] : 지정한 레이블을 빠져나감. while문 종료
▶ 동적 SQL문 활용
- PREPARE : SQL문을 실행하지 않고 미리 준비만 함
- EXECUTE : 준비한 SQL문을 실행
- DEALLOCATE PREFARE 문장을 해제
728x90
반응형
'인공지능, 데이터분석 > [SQL] 혼자 공부하는 SQL' 카테고리의 다른 글
[혼공SQL] 6장. 인덱스 (0) | 2023.04.26 |
---|---|
[혼공SQL] 5장. 테이블(제약조건 : 기본키, 외래키, 고유키)과 뷰 (1) | 2023.04.24 |
[혼공학습단 9기 / SQL] ORDER BY, LIMIT, DISTINCT, GROUP BY, HAVING, 2주차 미션 (0) | 2023.01.15 |
[혼공학습단 9기 / SQL] SELECT, FROM, WHERE (0) | 2023.01.15 |
[혼공학습단 9기 / SQL] 인덱스, 뷰, 스토어드 프로시저 (0) | 2023.01.06 |