[TIL] SQL문
SQL
SQL은 Structured Query Language의 약어로 데이터베이스에서 사용되는 구조화된 쿼리 언어이다. 여기서 쿼리란 "질의문"으로 저장되어 있는 정보를 필터링하기 위한 질문으로 볼 수 있다.
또한 SQL은 데이터가 구조화된 테이블을 사용하는 데이터베이스 (RDB, Relation DataBase)에서 활용이 가능하다. 추가적으로 구조화되어 있지 않은 데이터베이스들은 NoSQL이라고 불린다.
SELECT FROM
SELECT는 데이터셋에 포함될 특성들을 선택하는 명령어이며, FROM과 세트로 사용된다.
SELECT * FROM table;
위의 쿼리는 table에서 모든 특성(*)을 검색하는 것은 뜻한다.
WHERE
WHERE은 필터 역할을 하는 쿼리문이다. 특정 조건을 만족하는 데이터들만 조회될 수 있게 해주는 역할을 한다.
SELECT * FROM table
WHERE id > 5;
위의 쿼리는 id의 값이 5 이상인 데이터들만 검색이 되는 쿼리이다.
WHERE절은 AND 혹은 OR을 통해서 조건을 여러개 설정할 수도 있다.
SELECT * FROM table
WHERE id > 5 AND type = 2;
문자열에서 특정 값과 비슷한 값을 찾을 때는 아래와 같이 LIKE와 함께 '%'를 사용한다.
SELECT * FROM table
WHERE name LIKE '%떡%';
또한, 리스트의 값들과 일치하는 데이터를 필터링할 때는 "IN"을 사용하고, 값이 없는 경우를 찾을 때는 "IS"를 사용한다.
GROUP BY
GROUP BY는 데이터를 그룹화해주는 쿼리이다.
SELECT type, COUNT(name) AS Count
FROM table
GROUP BY type;
HAVING
HAVING은 GROUP BY로 조회된 결과에 대한 필터링을 해주는 역할을 한다.
SELECT type, COUNT(name) AS Count
FROM table
GROUP BY type
HAVING COUNT(name) >= 4;
CASE
CASE는 if문과 같은 기능을 해주는 쿼리문이다.
SELECT CASE
WHEN type = 1 THEN 'G1'
WHEN type = 3 THEN 'G3'
ELSE 'NONE'
END AS 'Group'
FROM table;
Author And Source
이 문제에 관하여([TIL] SQL문), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@woooa/TIL-SQL문저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)