BACKEND/DATABASE

SQL 튜토리얼 - SELECT, DISTINCT, WHERE, 비교/논리연산자 이해하기

우진하다 2023. 6. 16. 15:35

SELECT.

SELECT 문은 데이터베이스에서 데이터를 선택하는데 사용.
반환된 데이터는 결과 집합이라는 결과 테이블에 저장됨

SELECT 
  column1, column2, ... -- 필드 이름
FROM 
  table_name;
    
--

SELECT 
  *  -- 모든 필드 선택
FROM 
  table_name;

 

SELECT DISTINCT.

고유한(서로 다른) 값만 반환하는데 사용
테이블 내부의 중복값을 제외한 고유값만 반환

SELECT DISTINCT 
  column1, column2, ...
FROM 
  table_name;

 

WHERE.

레코드를 필터링하는데 사용, 지정된 조건을 충족하는 레코드만 추출

SELECT 
  column1, column2, ...
FROM 
  table_name
WHERE 
  condition;

 

WHERE 절의 연산자.

Equal,  =
아래는 Products 테이블의 모든 필드를 보여주는데 Price가 18인 값만 반환

SELECT * FROM Products
WHERE Price = 18;

 

Comparison operator, < > >= <= <>(!=)
비교 연산자이며 해당 조건을 충족하는 값만 반환합니다.

SELECT ProductName, Price FROM Products
WHERE Price >= 30;

SELECT * FROM Products
WHERE Price <> 18; -- !=

 

BETWEEN - AND
연속적인 범위 내의 값을 검색하는 데 사용
BETWEEN 연산자를 사용하면 열의 값이 지정된 범위에 속하는 행을 선택해 반환
날짜 필터링 등에도 사용

SELECT * FROM Products
WHERE Price BETWEEN 50 AND 60;

 

LIKE
문자열 패턴 매칭을 수행

SELECT * FROM Customers
WHERE City LIKE 's%'; -- 's'로 시작하는 도시만

 

IN
여러 가능한 값을 지정하는 데 사용. 열의 값을 여러 값과 비교하고 지정된 값 중 일치하는 행을 검색해 반환

SELECT * FROM Customers
WHERE City IN ('Paris','London');

 

AND, OR 및 NOT 연산자.

 논리 연산자. 이러한 연산자를 사용하여 복잡한 조건을 구성하고 여러 조건을 결합할 수 있습니다.

AND 연산자는 여러 조건을 모두 만족하는 경우에만 참으로 평가
OR 연산자는 여러 조건 중 적어도 하나의 조건을 만족하는 경우 참
NOT 연산자는 조건의 논리를 반전시킵니다. 참은 거짓으로, 거짓은 참으로 평가

AND
국가가 "독일"이고 도시가 "베를린"인 "고객"에서 모든 필드를 선택

SELECT * FROM Customers
WHERE Country='Germany' AND City='Berlin';

 

OR
 국가가 "독일" 또는 "스페인"인 "고객"에서 모든 필드를 선택

SELECT * FROM Customers
WHERE Country='Germany' OR Country='Spain';

 

NOT
국가가 "독일"이 아닌 "고객"에서 모든 필드를 선택

SELECT * FROM Customers
WHERE NOT Country='Germany';

 

AND, OR 및 NOT 결합

-- 국가가 "독일"이고 도시가 "베를린" 또는 "뮌헨"이어야 하는 "고객"에서 모든 필드를 선택
SELECT * FROM Customers
WHERE Country='Germany' AND (City='Berlin' OR City='München');

-- 국가가 "독일" 및 "미국"이 아닌 "고객"에서 모든 필드를 선택
SELECT * FROM Customers
WHERE NOT Country='Germany' AND NOT Country='USA';

 

 


참고 자료 
https://www.w3schools.com/sql/sql_syntax.asp