반응형
-- 사용 테이블 예제
CREATE TABLE product_order(
ID INT AUTO_INCREMENT PRIMARY KEY,
NAME VARCHAR(20),
product VARCHAR(50),
price INT
);
INSERT INTO product_order(name, product, price) VALUES('홍길동', 'TV', 5000);
INSERT INTO product_order(name, product, price) VALUES('홍길동', '핸드폰', 10000);
INSERT INTO product_order(name, product, price) VALUES('홍길순', '핸드폰', 10000);
INSERT INTO product_order(name, product, price) VALUES('김민지', '핸드폰', 10000);
INSERT INTO product_order(name, product, price) VALUES('홍길순', '컴퓨터', 2000);
INSERT INTO product_order(name, product, price) VALUES('김민수', '컴퓨터', 2000);
INSERT INTO product_order(name, product, price) VALUES('이민지', '생수', 500);
INSERT INTO product_order(name, product, price) VALUES('홍길동', '생수', 500);
📝CAST
- CAST(변환시킬 값 AS (UN)SIGNED형변환 시킬 자료형)
SELECT CAST(AVG(price) AS INTEGER) AS '평균 구매금액' FROM product_order;
평균 구매금액 |
5,000 |
📝CONVERT
- CONVERT(변환시킬 값, (UN)SIGNED 형변환 시킬 자료형)
SELECT CONVERT(AVG(price), INTEGER) AS '평균 구매금액' FROM product_order;
평균 구매금액 |
5,000 |
📝IF
- IF(수식, 참, 거짓)
SELECT name, IF(price >= 5000, 'UP', 'DOWN')
FROM product_order
GROUP BY name;
name | IF(price >=5000, 'UP', 'DOWN') |
김민수 | DOWN |
김민지 | UP |
이민지 | DOWN |
홍길동 | UP |
홍길순 | UP |
📝IF NULL
- IFNULL(수식1, NULL일 경우 반환 값)
SELECT IFNULL(NULL, 'true') AS is_null;
is_null |
true |
📝CASE WHEN ELSE END
- CASE... WHEN... ELSE... END
- CASE에는 값이 들어가고 WHEN에는 각 해당 상황에 조건이 들어갑니다.
- 조건이 맞으면 THEN을 실행합니다. 다 그렇지 않으면 ELSE를 실행합니다
- CASE문이 다 끝나면 END를 마지막에 적어줘야합니다
SELECT
name,
CASE WHEN price = 500 THEN '생수입니다'
WHEN price = 2000 THEN '컴퓨터입니다'
WHEN price = 5000 THEN 'TV입니다'
WHEN price = 10000 THEN '핸드폰입니다'
ELSE '모르겠습니다'
END AS '상품'
FROM product_order;
name | 상품 |
홍길동 | TV입니다 |
홍길동 | 핸드폰입니다 |
홍길순 | 핸드폰입니다 |
김민지 | 핸드폰입니다 |
홍길순 | 컴퓨터입니다 |
김민수 | 컴퓨터입니다 |
이민지 | 생수입니다 |
홍길동 | 생수입니다 |
반응형