목차
SQLD 공부 및 데이터 분석을 하기 위해 DB에 있는 값들을 불러올 때, SQL을 많이 활용했습니다.
이전에 독학하면서 공부했던 내용을 기록으로 남겨둡니다.
WHERE 절
WHERE 절은 SELECT, UPDATE, DELETE 문에서 특정 조건을 만족하는 데이터만 조회, 수정, 삭제하고자 할 때 사용합니다.
예시: customers 테이블에서 age가 18 이상인 고객 정보만 조회하는 쿼리입니다.
SELECT *
FROM customers
WHERE age >= 18;
1. 비교 연산자
비교 연산자를 사용하여 특정 값과 컬럼 값을 비교해 필터링할 수 있습니다. 주요 비교 연산자는 다음과 같습니다.
등호(=): 같음
부등호(!= 또는 <>): 같지 않음
작다(<), 크다(>), 작거나 같다(<=), 크거나 같다(>=)
예시: products 테이블에서 가격이 10000원 이상인 상품만 조회합니다.
SELECT *
FROM products
WHERE price >= 10000;
2. 논리 연산자
조건을 더 복잡하게 조합하려면 논리 연산자를 사용합니다. 주요 논리 연산자는 다음과 같습니다.
AND: 두 조건이 모두 참일 때 참
OR: 두 조건 중 하나 이상이 참일 때 참
NOT: 조건이 참이면 거짓, 거짓이면 참
예시 1: customers 테이블에서 age가 18 이상이고, city가 'Seoul'이거나 'Busan'인 고객 정보만 조회합니다.
SELECT *
FROM customers
WHERE age >= 18 AND (city = 'Seoul' OR city = 'Busan');
예시 2: customers 테이블에서 age가 18 미만이거나, city가 'Seoul'이 아닌 고객 정보만 조회합니다.
SELECT *
FROM customers
WHERE age < 18 OR NOT (city = 'Seoul');
예시 3: products 테이블에서 price가 10000 이상 50000 이하이며, category가 'Electronics'이거나 'Furniture'인 상품만 조회합니다.
SELECT *
FROM products
WHERE (price BETWEEN 10000 AND 50000) AND (category = 'Electronics' OR category = 'Furniture');
예시 4: customers 테이블에서 city가 'Seoul'이고, 전화번호가 없거나 이메일이 '@gmail.com'으로 끝나는 고객 정보만 조회합니다.
SELECT *
FROM customers
WHERE city = 'Seoul' AND (phone_number IS NULL OR email LIKE '%@gmail.com');
3. IN 연산자
IN 연산자는 컬럼 값이 지정한 값들 중 하나와 일치하는지 확인할 때 사용합니다. (여러개 있으면 하나만 일치하면 됨)
예시: products 테이블에서 category가 'Electronics', 'Furniture', 'Toys' 중 하나에 속하는 상품만 조회합니다.
SELECT *
FROM products
WHERE category IN ('Electronics', 'Furniture', 'Toys');
4. BETWEEN 연산자
BETWEEN 연산자는 컬럼 값이 지정한 범위 내에 있는지 확인할 때 사용합니다.
예시: products 테이블에서 가격이 10000원 이상 50000원 이하인 상품만 조회합니다.
SELECT *
FROM products
WHERE price BETWEEN 10000 AND 50000;
5. LIKE 연산자
LIKE 연산자는 문자열 패턴 매칭에 사용되며, 와일드카드 문자를 사용하여 다양한 패턴을 표현할 수 있습니다. 주요 와일드카드 문자는 다음과 같습니다.
%: 0개 이상의 임의의 문자를 나타냅니다.
_: 임의의 단일 문자를 나타냅니다.
예시: customers 테이블에서 이메일이 '@gmail.com'으로 끝나는 고객 정보만 조회합니다.
SELECT *
FROM customers
WHERE email LIKE '%@gmail.com';
6. NULL 값 다루기
데이터베이스에서 NULL은 값이 없거나 알 수 없는 값을 나타냅니다. NULL 값을 필터링하려면 IS NULL 또는 IS NOT NULL을 사용해야 합니다.
예시: customers 테이블에서 전화번호가 없는 고객 정보만 조회합니다.
SELECT *
FROM customers
WHERE phone_number IS NULL;
'SQL > SQL 스터디' 카테고리의 다른 글
SQL 독학: 10가지 주요 날짜 및 시간 함수 (0) | 2023.04.23 |
---|---|
SQL 독학: 9가지 자주 쓰는 문자열 함수 알아보기 (0) | 2023.04.23 |
SQL 독학: 집계 함수 활용하기(데이터 요약 및 분석의 기본) (0) | 2023.04.22 |
SQL 독학: 정렬 및 그룹화 (order by, group by) (0) | 2023.04.22 |
SQL 독학: 데이터 검색과 결합을 위한 SELECT와 JOIN (0) | 2023.04.20 |
댓글