• Home
  • About
    • CodeLab photo

      CodeLab

      UnprettyCoder's Blog

    • Learn More
    • Github
  • Posts
    • All Posts
    • Computer Science
      • JAVA
      • C
      • PYTHON
      • JavaScript
      • DATABASE
      • Git
      • nodeJS
    • Industrial Engineering
      • O.R.
      • Statistics
      • E.E.
    • Others
      • NETWORK
      • ACCOUNTANCY
      • OTHERS
  • Projects

mySQL SYNTAX [SELECT]

21 Jan 2020

Reading time ~1 minute

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;
    


Share Tweet +1