테이블 생성하기
데이터 조회하기
SELECT * FROM basic.student;
데이터 삽입하기
INSERT INTO `basic`.`student` (`id`, `name`, `korean`, `english`, `math`) VALUES ('17', '안녕히', '11', '11', '12');
데이터 수정하기
UPDATE `basic`.`student` SET `name` = '안녕히' WHERE (`id` = '16');
데이터 삭제하기
DELETE FROM `basic`.`student` WHERE (`id` = '17');
WHERE 조건의 AND, OR, NOT
-- 1. AND, OR, NOT
SELECT * FROM `basic`.`student`
WHERE `name` = '조재영' AND `korean` >= 5;
SELECT * FROM `basic`.`student`
WHERE `name` = '조재영' OR `korean` >= 5;
SELECT * FROM `basic`.`student`
WHERE NOT `name` = '조재영';
DISTINCT 중복된 값 제외
-- 2. DISTINCT
SELECT DISTINCT `name` FROM `student`;
정렬 ORDER BY
-- 3. ORDER BY
SELECT * FROM `student`
ORDER BY `name` DESC;
조회 행 수 제한 LIMIT
-- 4. LIMIT
SELECT * FROM `student`
WHERE `korean` >= 3
LIMIT 5;
조건에 맞는 값의 갯수 구하기 COUNT
-- 5. COUNT
SELECT COUNT(*) FROM `student` WHERE `korean` >= 3;
포함된 문자열 구하기 LIKE
-- 6. LIKE
SELECT * FROM `student`
WHERE `name` LIKE '김%희';
여러 값을 OR로 묶는 조건문 IN
-- 7. IN
SELECT * FROM `student`
WHERE `name` IN ('조재영', '김철희');
조건 사이의 값 구하기 BETWEEN AND
-- 8. BETWEEN
SELECT * FROM `student`
WHERE `id` BETWEEN 1 AND 5;
컬럼명 명칭 정하기 AS
-- 9. AS
SELECT `id` AS '번호', `name` AS '이름' FROM `student`;
INNER JOIN : 값이 일치하는 것만 조인 교집합
-- 10. INNER JOIN
SELECT `b`.`id`, `title`, `content`, `entry_date`, `modify_date`, `nickname` FROM `board` as `b`
INNER JOIN `user` as `u`
ON `b`.`writerId` = `u`.`id`
WHERE `b`.`writerId` = 1;
LEFT JOIN : 왼쪽의 테이블을 중심으로 일치하는 값이 있으면 넣고 없으면 null로 비우기
-- 11. LEFT JOIN
SELECT `b`.`id`, `title`, `content`, `entry_date`, `modify_date`, `nickname` FROM `board` as `b`
LEFT JOIN `user` as `u`
ON `b`.`id` = `u`.`id`;
RIGHT JOIN : 오른쪽의 테이블을 중심으로 일치하는 값이 있으면 넣고 없으면 null로 비우기
-- 12. RIGHT JOIN
SELECT `b`.`id`, `title`, `content`, `entry_date`, `modify_date`, `nickname` FROM `board` as `b`
RIGHT JOIN `user` as `u`
ON `b`.`id` = `u`.`id`;
그룹화 하기 GROUP BY
-- 13. GROUP BY
SELECT `customer_id`, COUNT(`customer_id`) FROM `sakila`.`rental`
GROUP BY `customer_id`;
SUBQUERY : 하나의 SQL 문에 포함되어 있는 또 다른 SQL 문 (INNER JOIN 대신 사용가능)
-- 14. SUBQUERY
SELECT * FROM `rental`
WHERE `customer_id` IN (
SELECT `customer_id` FROM `customer`
WHERE `first_name` LIKE 'cla%'
);
'JX405기_비트 > mysql' 카테고리의 다른 글
Day12-2 게시판 관리 프로그램 MVC 패턴으로 MySQL연결 (0) | 2023.02.07 |
---|---|
Day12-1 학생 관리 시스템 MVC 패턴으로 MySQL 사용 (0) | 2023.02.07 |
Day11-1 intelliJ 랑 MySQL 연결하기 (0) | 2023.02.07 |
Day10-2 MySQL sakila 테이블을 이용한 연습 문제 (0) | 2023.02.07 |
Day10-0 MySQL 설치 및 실행 (0) | 2023.02.07 |