Structured Query Language: SQL
데이터 베이스 질의 언어
무슨 프로젝트를 하던, DB는 빠질 수 없는 요소이다. 나 또한 그렇기에 자주 사용한다.
하지만 다른 일을 하다가 SQL 작성하려면 종종 까먹기 마련이었다.
기본적인 것만 이 기회에 정리하고자 한다.
- INSERT : 데이터 입력 구문
INSERT INTO 테이블이름 (필드1, 필드2, ...) VALUES (value1, value2, ...);
ex) INSERT INTO user (name, password) VALUES ("Park Boyoung", "asd123");
- UPDATE : 데이터 수정 구문
UPDATE 테이블이름 SET field1=value1, field2=value2 WHERE field3 = value3;
ex) UPDATE user SET name = "Park Bo Young", password = "1q2w3e" WHERE phone_number = "010-XXXX-XXXX" ;
- DELETE : 데이터 삭제 구문
DELETE FROM 테이블이름 WHERE filed1=value1;
ex) DELETE FROM user WHERE name = "Park Bo Young";
- SELECT : 데이터를 읽어오는 구문. SELECT 뒤 필드 값들만 보여준다.
SELECT field1, field2, ... FROM 테이블이름 WHERE filed1=value1;
ex) SELECT name, password FROM user WHERE phone_number = "010-XXXX-XXXX" ;
* SELECT * FROM ---... 으로 변경시 모든 필드값을 포함하여 반환함.
- DROP : 개체 삭제
DROP TABLE ( 또는 DATABASE ) 테이블명 ( 또는 DB명);
ex1) DROP DATABASE USERS;
ex2) DROP TABLE user;
-------------------------------------------------------------------------------------------------
추가 가능한 조건절
- ORDER BY field DESC (또는 ASC) : 데이터 정렬 순서 변경
SELECT * FROM 테이블이름 WHERE field1=value1 ORDER BY field2 DESC;
ex) SELECT * FROM user WHERE name="Park Bo Young" ORDER BY birthday DESC;
= 이름이 "Park Bo Young" 인 행들을 birthday 필드값 기준으로 내림차순(DESC, 오름차순은 ASC)으로 정렬하여 반환.
- LIMIT : 반환 행의 개수 제한
SELECT * FROM 테이블이름 WHERE field1=value1 LIMIT 상수;
ex) SELECT * FROM user WHERE name="Park Bo Young" LIMIT 5;
= 이름이 "Park Bo Young" 인 행들을 5개까지만 반환.
- OFFSET : 반환 행에 대한 오프셋 적용
SELECT * FROM 테이블이름 WHERE field1=value1 OFFSET 상수;
ex) SELECT * FROM user WHERE name="Park Bo Young" OFFSET 5;
= 이름이 "Park Bo Young" 인 행들을 앞에 5개 빼고 반환.
-------------------------------------------------------------------------------------------------
그 외.
- LIKE : 해당 값을 포함하면 반환 ( = 의 경우, 같아야만 반환)
1) SELECT * FROM 테이블이름 WHERE filed1 LIKE '%value1%';
ex) SELECT * FROM user WHERE name LIKE '%Park%';
= 이름에 "Park"이 들어가는 행들 반환.
2) SELECT * FROM 테이블이름 WHERE filed1 LIKE '%value1';
ex) SELECT * FROM user WHERE name LIKE '%Park';
= 이름이 "Park"로 끝나는 행들 반환.
3) SELECT * FROM 테이블이름 WHERE filed1 LIKE 'value1%';
ex) SELECT * FROM user WHERE name LIKE 'Park%';
= 이름이 "Park"로 시작하는 행들 반환.
'컴퓨터 공학 > 알고리즘' 카테고리의 다른 글
👉 [알고리즘] You Only Look Once (YOLO) 욜로 이해 (1) | 2019.11.22 |
---|---|
👉 [번역] 객체 인식(Object Recognition) 이해 : 딥러닝 vs 머신러닝 방식 (0) | 2019.10.29 |
👉 [SQL] column 내 가장 길이 긴 값 찾기 (0) | 2019.06.29 |
백트래킹 (0) | 2018.04.10 |
BFS / DFS (0) | 2018.04.10 |