2. 기본 명령문 (1) -바닥부터 배우는 Mysql -
*CREATE TABLE
*INSERT INTO
*SELECT
*SELECT DISTINCT
*WHERE
*ORDER BY
*UPDATE
*DELETE
CREATE TABLE 문:
컬럼 명과 데이터 타입을 명시하여 테이블을 생성한다.
CREATE TABLE table_name
(
column_name1 data_type(size),
column_name2 data_type(size),
column_name3 data_type(size),
....
);
예 2-1
CREATE TABLE Students (
StudentID int,
Name varchar(255),
City varchar(255),
Tel varchar(255),
Grade int
);
중요: 맨 마지막에는 ,를 안 쓴다.(Grade int, 라고 쓰면 error난다.)
결과
StudentID | LastName | FirstName | Address | City |
아직 데이터가 없어서 컬럼 명만 나온다.
예 2-1B
CREATE TABLE posts (
id bigint(20) unsigned NOT NULL AUTO_INCREMENT,
subject varchar(255) NOT NULL,
content mediumtext,
created datetime,
user_id int(10) unsigned NOT NULL,
user_name varchar(32) NOT NULL,
hit int(10) unsigned NOT NULL default '0',
PRIMARY KEY (id)
);
//AUTO_INCREMENT를 지정한 필드는 PRIMARY KEY로 지정을 해야 하네.
INSERT INTO 문:
지정된 table의 컬럼에 순서대로 입력된다.
INSERT INTO table_name
VALUES (value1,value2,value3,...);
예 2-2
INSERT INTO Students
VALUES (1, 'James', 'Seoul', '002-3256', 85);
결과
StudentID | Name | City | Tel | Grade |
1 | James | Seoul | 002-3256 | 85 |
명시된 특정 컬럼에 순서대로 입력된다.
INSERT INTO table_name (column1,column2,column3,...)
VALUES (value1,value2,value3,...);
예2-3
INSERT INTO Students (StudentID, Name, City)
VALUES (1, 'Kim ChulSu', 'Seoul');
StudentID | Name | City | Tel | Grade |
1 | Kim ChulSu | Seoul |
|
|
여러 개의 레코드를 입력한다.
INSERT INTO table_name (column1,column2,column3,...)
VALUES (value11,value12,value13,...),
(value21,value22,value23,...),
(value31,value32,value33,...),
......
(valuex1,valuex2,valuex3,...);
예2-4
INSERT INTO Students (StudentID, Name, City, Tel, Grade)
VALUES
(1, 'Kim ChulSu', 'Seoul', '002-3256', 85),
(2, 'Lee YoungHee', 'Pusan', '012-7854', 92),
(3, 'Park JinSu', 'Pusan', '022-4725', 63);
결과
StudentID | Name | City | Tel | Grade |
1 | Kim ChulSu | Seoul | 002-3256 | 85 |
2 | Lee YoungHee | Pusan | 012-7854 | 92 |
3 | Park JinSu | Pusan | 022-4725 | 63 |
SELECT 문: database에서 data를 선택함.
SELECT column_name, column_name FROM table_name;
특정 table에서 모든(*) column의 data를 선택한다.
SELECT * FROM table_name;
예 2-5(위의 database를 사용한 결과)
SELECT * FROM Students;
StudentID | Name | City | Tel | Grade |
1 | Kim ChulSu | Seoul | 002-3256 | 85 |
2 | Lee YoungHee | Pusan | 012-7854 | 92 |
3 | Park JinSu | Pusan | 022-4725 | 63 |
SELECT DISTINCT 문:
중복된 데이터는 하나만 취한다.
즉 같은 데이터가 2개 이상이면 하나만 가져온다.
SELECT DISTINCT column_name, column_name
FROM table_name;
예 2-6
SELECT DISTINCT City FROM Students;
City |
Seoul |
Pusan |
WHERE:
WHERE절은 특정 레코드에 대한 조건을 설정할 때 사용되는 구문이다.
SELECT column_name,column_name
FROM table_name
WHERE column_name operator value;
예 2-7
SELECT * FROM Students WHERE Grade>80;
StudentID | Name | City | Tel | Grade |
1 | Kim ChulSu | Seoul | 002-3256 | 85 |
2 | Lee YoungHee | Pusan | 012-7854 | 92 |
사용되는 연산자.
=, <>, >, <, >=, <= 등과 다음 구문을 아용.
BETWEEN ~ AND ~ : 범위내의 데이터
LIKE : %기호를 이용해 불확실한 부분을 표현.
IN(d1, d2, d3, ...) : ()안의 어느 한 데이터와 일치하는 것을 찾는다.
ORDER BY 키워드:
데이터의 정렬 순서를 정한다.
SELECT column_name, column_name
FROM table_name
ORDER BY column_name ASC|DESC, column_name ASC|DESC;
예 2-8
SELECT * FROM Students ORDER BY Grade ASC;
결과
StudentID | Name | City | Tel | Grade |
3 | Park JinSu | Pusan | 022-4725 | 63 |
1 | Kim ChulSu | Seoul | 002-3256 | 85 |
2 | Lee YoungHee | Pusan | 012-7854 | 92 |
UPDATE 문:
데이터를 수정한다.
UPDATE table_name
SET column1=value1,column2=value2,...
WHERE some_column=some_value;
주의 : WHERE절이 없으면 모든 레코드가 수정된다.
예 2-9
UPDATE Students
SET City='Seoul'
WHERE Name='Park JinSu';
결과
StudentID | Name | City | Tel | Grade |
1 | Kim ChulSu | Seoul | 002-3256 | 85 |
2 | Lee YoungHee | Pusan | 012-7854 | 92 |
3 | Park JinSu | Seoul | 022-4725 | 63 |
DELETE 문:
레코드를 삭제한다.
DELETE FROM table_name
WHERE some_column=some_value;
주의 : WHERE절이 없으면 모든 레코드가 삭제된다.
예 2-9
DELETE FROM Students
WHERE Name=Lee YoungHee;
결과
StudentID | Name | City | Tel | Grade |
1 | Kim ChulSu | Seoul | 002-3256 | 85 |
3 | Park JinSu | Seoul | 022-4725 | 63 |
모든 data 지우기
테이블의 구조, 속성, 색인 등은 그대로이고 데이터만 지운다.
DELETE FROM table_name;
DELETE * FROM table_name;
주의 : 한 번 지워진 기록은 다시는 되살릴 수 없으니 조심할 것.
예 2-10
DELETE FROM Students;
결과
StudentID | Name | City | Tel | Grade |
'COMPUTER > Mysql' 카테고리의 다른 글
1. Mysql 함수(1) -바닥부터 배우는 Mysql - (0) | 2017.01.27 |
---|---|
5. Mysql: 기본 명령문(4) -바닥부터 배우는 Mysql - (0) | 2017.01.24 |
4. Mysql: 기본 명령문(3) -바닥부터 배우는 Mysql - (0) | 2017.01.22 |
3. Mysql: 기본 명령문(2) -바닥부터 배우는 Mysql - (0) | 2017.01.21 |
1. Mysql:개념 및 기본 -바닥부터 배우는 Mysql - (0) | 2017.01.15 |