CREATE DATABASE 데이터베이스_이름;
데이터베이스를 이용해 테이블을 만들거나 수정하거나 삭제하는 등의 작업을 하려면, 먼저 데이터베이스를 사용하겠다는 명령을 전달해야 한다.
USE 데이터베이스_이름;
USE 를 이용해 데이터베이스를 선택했다면, 이제 테이블을 만들 수 있다.
CREATE TABLE user (
id int PRIMARY KEY AUTO_INCREMENT,
name varchar(255),
email varchar(255)
);
DESCRIBE user;
mysql> describe user;
+-------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------+--------------+------+-----+---------+----------------+
| id | int | NO | PRI | NULL | auto_increment |
| name | varchar(255) | YES | | NULL | |
| email | varchar(255) | YES | | NULL | |
+-------+--------------+------+-----+---------+----------------+
3 rows in set (0.00 sec)
SELECT 특성_1, 특성_2
FROM 테이블_이름
*
는 와일드카드 (wildcard) 로 전부 선택할 때에 사용된다.
특정 값과 동일한 데이터 찾기
SELECT 특성_1, 특성_2
FROM 테이블_이름
WHERE 특성_1 = "특정 값"
SELECT *
FROM 테이블_이름
ORDER BY 특성_1 DESC
INNER JOIN
이나 JOIN
으로 실행할 수 있다.SELECT *
FROM 테이블_1
JOIN 테이블_2 ON 테이블_1.특성_A = 테이블_2.특성_B
LEFT, RIGHT 등의 OUTER JOIN은 기준이 되는 테이블이 무엇이냐에 따라 다르다. 결과가 왼쪽 테이블 전체 데이터 대상이라면 LEFT를 ,오른쪽 테이블의 전체 데이터가 대상이라면 RIGHT를 사용한다.
SELECT *
FROM 테이블_1 // 기준이 되는 테이블
LEFT OUTER JOIN 테이블_2 ON 테이블_1.특성_A = 테이블_2.특성_B
SELECT *
FROM 테이블_1
RIGHT OUTER JOIN 테이블_2 // 기준이 되는 테이블
ON 테이블_1.특성_A = 테이블_2.특성_B
아직은 Right Join의 필요성을 느끼지 못하겠다. LEFT JOIN을 이용해서 기준 테이블을 바꾸면 right join의 결과값도 얻을 수 있다.