SQL
SQL Queries 실습
hyungminjeon
2025. 3. 28. 19:47
- 연산자: =, AND, OR, LIKE, IS NULL, >, <
- 절: SELECT, FROM, WHERE, DISTINCT, ORDER BY, LIMIT, CASE
1. Operators (연산자)
- = (Equal to)
- 사용 예시: cuisine = 'Italian'
특정 컬럼의 값이 지정한 값과 일치하는지를 비교.
- 사용 예시: cuisine = 'Italian'
- AND (Logical AND)
- 사용 예시: cuisine = 'Italian' AND price = '$$$'
여러 조건을 동시에 만족하는 데이터만 선택할 때 사용.
- 사용 예시: cuisine = 'Italian' AND price = '$$$'
- OR (Logical OR)
- 사용 예시: neighborhood = 'Midtown' OR neighborhood = 'Downtown' OR neighborhood = 'Chinatown'
여러 조건 중 하나라도 만족하는 데이터를 선택할 때 사용.
- 사용 예시: neighborhood = 'Midtown' OR neighborhood = 'Downtown' OR neighborhood = 'Chinatown'
- LIKE (Pattern Matching)
- 사용 예시: name LIKE '%meatball%'
주어진 패턴에 맞는 값을 찾을 때 사용. %는 와일드카드로, 문자열 앞뒤나 중간에 어떤 값이 올 수 있음을 의미.
- 사용 예시: name LIKE '%meatball%'
- IS NULL (Null Check)
- 사용 예시: health IS NULL
특정 컬럼의 값이 NULL인 경우를 찾을 때 사용.
- 사용 예시: health IS NULL
- > (Greater than), < (Less than), = (Equal)
- 사용 예시: review > 4.5
특정 컬럼의 값이 다른 값보다 크거나 작은지를 비교.
- 사용 예시: review > 4.5
2. Clauses (절)
- SELECT
- 사용 예시: SELECT * FROM nomnom;
데이터베이스에서 컬럼과 데이터를 선택할 때 사용.
- 사용 예시: SELECT * FROM nomnom;
- FROM
- 사용 예시: FROM nomnom
데이터를 검색할 테이블을 지정하는 절.
- 사용 예시: FROM nomnom
- WHERE
- 사용 예시: WHERE cuisine = 'Italian' AND price = '$$$'
특정 조건에 맞는 데이터를 필터링할 때 사용.
- 사용 예시: WHERE cuisine = 'Italian' AND price = '$$$'
- DISTINCT
- 사용 예시: SELECT DISTINCT cuisine FROM nomnom;
중복된 값을 제외하고 고유한 값을 선택할 때 사용.
- 사용 예시: SELECT DISTINCT cuisine FROM nomnom;
- ORDER BY
- 사용 예시: ORDER BY review DESC
데이터를 특정 컬럼을 기준으로 오름차순(ASC) 또는 내림차순(DESC)으로 정렬할 때 사용.
- 사용 예시: ORDER BY review DESC
- LIMIT
- 사용 예시: LIMIT 10
결과의 개수를 제한할 때 사용. LIMIT 10은 상위 10개의 결과만 가져옴.
- 사용 예시: LIMIT 10
- CASE
- 사용 예시:조건문을 사용하여 값에 따라 다른 결과를 출력할 때 사용.
-
sqlCopyEditCASE WHEN review > 4.5 THEN 'Extraordinary' WHEN review > 4 THEN 'Excellent' WHEN review > 3 THEN 'Good' WHEN review > 2 THEN 'Fair' ELSE 'Poor' END AS 'Rating system'
SELECT *
FROM nomnom;
SELECT DISTINCT cuisine
FROM nomnom;
SELECT *
FROM nomnom
WHERE cuisine = 'Italian'
AND price = '$$$';
SELECT *
FROM nomnom
WHERE neighborhood = 'Midtown'
OR neighborhood = 'Downtown'
OR neighborhood = 'Chinatown';
SELECT *
FROM nomnom
WHERE name LIKE '%meatball%';
SELECT *
FROM nomnom
WHERE health IS NULL;
SELECT *
FROM nomnom
ORDER BY review DESC
LIMIT 10;
SELECT *,
CASE
WHEN review > 4.5 THEN 'Extraordinary'
WHEN review > 4 THEN 'Excellent'
WHEN review > 3 THEN 'Good'
WHEN review > 2 THEN 'Fair'
ELSE 'Poor'
END AS 'Rating system'
FROM nomnom;