SQL 명령어
- SELECT : database로부터 data를 추출한다.
- UPDATE : database내의 data를 갱신한다.
- DELETE : database로부터 data를 삭제한다.
- INSERT INTO : database로 새로운 data를 삽입한다.
- CREATE DATABASE : 새로운 database를 생성한다.
- ALTER DATABASE : database를 수정한다.
- CREATE TABLE : 새 table을 생성한다.
- ALTER TABLE : table을 수정한다.
- DROP TABLE : table을 삭제한다.
- CREATE INDEX : index (search key)를 생성한다.
- DROP INDEX : index를 삭제한다.
SELECT
- table로부터 선택한 column들을 전부 읽어서 보여준다. * 은 모든 column.
|
|
중복되는 data는 제외하고 보고싶을 때
DISTINCT
구문을 사용한다. (예를 들어 city 정보에 seoul을 갖는 record가 두 개 있을 때 하나만 보여준다.)1SELECT DISTINCT column_name, column_name FROM table_name;WHERE
절은 특별한 기준을 만족시키는 record만 추출한다.- Text value는 작은 따옴표, Numeric value에는 따옴표 없이 사용한다.
Operator | Description |
---|---|
= | Equal |
<> | Not Equal |
> | Greater than |
< | Less than |
>= | Greater than or equal |
<= | Less than or equal |
BETWEEN | Between an inclusive range |
LIKE | Search for a pattern |
IN | To specify multiple possible values for a column |
|
|
AND와 OR
의 경우 다음과 같이 사용 가능하다.12SELECT * FROM Customers WHERE Country='Germany' AND City='Berlin';SELECT * FROM Customers WHERE Country='Germany' AND (City='Berlin' or City='Munchen');ORDER BY
keyword를 이용하여 오름차순으로 정렬해서 볼 수 있다. 내림차순 정렬을 위해서는DESC
keyword를 사용하면 된다.1234SELECT column_name, column_name FROM table_name ORDER BY column_name ASC|DESC, column_name ASC|DESC;SELECT * FROM Customers ORDER BY Country;SELECT * FROM Customers ORDER BY Country DESC;SELECT * FROM Customers ORDER BY Country ASC, CustomerName DESC;INSERT INTO
구문은 table에 새로운 record를 삽입하는 것으로 두 가지 방식으로 사용할 수 있다.123INSERT INTO table_name VALUES (value1,value2,value3,...);INSERT INTO table_name (column1,column2,column3,...) VALUES (value1,value2,value3,...);INSERT INTO Customers (CustomerName, ContactName, Address, City, PostalCode, Country) VALUES ('Cardinal','Tom B. Erichsen','Skagen 21','Stavanger','4006','Norway');UPDATE
구문은 table 내에 존재하는 record를 갱신하는 기능이다. WHERE구문을 사용하지 않는다면 모든 record들이 갱신되므로 반드시 올바르게 사용하여야 한다.12UPDATE table_name SET column1=value1, column2=value2, ... WHERE some_column=some_value;UPDATE Customers SET ContactName='Alfred Schmidt', City='Hamburg' WHERE CustomerName='Alfreds Futterkiste';DELETE
구문은 table 내의 row를 삭제한다. WHERE를 사용하지 않으면 모두 삭제되므로 반드시 주의하자.12DELETE FROM table_name WHERE some_column=some_value;DELETE FROM Customers WHERE CustomerName='Alfreds Futterkiste' AND ContactName='Maria Anders';모든 Data를 삭제하기 위해서는 다음 둘 중 하나를 사용하면 된다. 복구할 수 없으므로 모쪼록 주의하자.
12DELETE FROM table_name;DELETE * FROM table_name;