SELECT
SELECT basic structure
SELECT [DISTINCT] `column_1` [AS `col_1_nick`] [,`column_2` [AS `col_2_nick`]] ...
FROM `table_name`
WHERE `condition`
ORDER BY `column_1` [ASC | DESC] [,`column_2` [ASC | DESC]] ... [LIMIT `n` [,`m`]];
1st Line
SELECT [DISTINCT] `column_1` [AS `col_1_nick`] [,`column_2` [AS `col_2_nick`]] ...
DISTINCT- 출력하려는 필드의 값이 동일한 레코드가 존재하면 하나만 출력한다
- 중복 불허 옵션
- EXAMPLE
SELECT DISTINCT author FROM books;AS- 출력하려는 필드의 열이름의 별칭을 지정할 수 있다.
- 필드 값에 어떠한 연산을 수행한 후, 별칭으로 출력할 때 사용
- EXAMPLE
SELECT yearly_income / 12 AS monthly_income FROM projects where project_name = "myProject";
2nd Line
FROM `table_name`
FROM- 현재 사용중인 DB에서 어떤 TABLE로부터 정보를 검색할 것인지 지정
3rd Line
WHERE `condition`
WHERE- 특정 조건을 만족하는 레코드만을 출력하기 위한 조건 지정 옵션
- EXAMPLE
SELECT * FROM students WHERE age = 17; SELECT * FROM students WHERE age = 18 && gender = 1; SELECT * FROM students WHERE age = 19 || gender = 0;
Last Line
ORDER BY `column_1` [ASC | DESC] [,`column_2` [ASC | DESC]] ... [LIMIT `n` [,`m`]];
ORDER BY- 레코드가 출력되는 순서를 정하는 옵션
-
ASC(DEFAULT) : 오름차순DESC: 내림차순 - EXAMPLE
SELECT * FROM students WHERE gender = 1 ORDER BY age DESC;LIMIT- SELECT된 자료의 상위 n개 레코드만 출력한다.
- ‘LIMIT
n,m’ 은 자료의 상위 n번째 이후로 m개의 레코드를 출력한다. - EXAMPLE
SELECT * FROM grades ORDER BY math DESC LIMIT 5; SELECT id, name FROM grades ORDER BY english DESC LIMIT 3, 5;