728x90
반응형
SQL 기본을 마무리하고 그동안 작성했던 글들을 돌아보니 이해를 돕기 위한 설명이나 예시들을 함께 작성하느라 한눈에 보기엔 어렵다는 느낌을 받았습니다. 그래서 이번 글에서는 그동안 배운 내용들을 한 번에 확인할 수 있도록 정리를 해보겠습니다. 아래 내용에는 그동안 전하지 못한 유용한 팁들도 함께 작성해보고자 합니다.
0️⃣ 요청사항 쿼리로 번역하기
- 필요한 데이터는 값과 조건으로 나눌 수 있고 값은 SELECT, 조건은 WHERE에 대응
- 요청사항: 12월 신규 가입한 사용자 아이디
- 값: 사용자 아이디
- 조건: 12월 신규가입
1️⃣ SELECT : 원하는 데이터 조회
- SELECT 절은 원하는 데이터 값(컬럼값)들을 조회하는 명령어입니다.
- 컬럼은 쉼표를 통해 여러 개를 나열할 수 있습니다.
SELECT 조회하고자 하는 컬럼값1, 컬럼값2...
FROM 테이블명
- 원하는 컬럼값을 조회할 때, 별칭을 지정할 수 있습니다. (Alias)
SELECT
컬럼값1 AS "별칭"
, 컬럼값1 별칭
FROM 테이블명
# 위의 두 가지는 모두 같은 결과를 보입니다. 별칭을 붙일 때는 AS와 큰따옴표를 생략할 수 있지만 가독성을 위해 AS는 매번 써주는 것을 추천합니다.
# 별칭에 특수문자나 띄어쓰기가 포함되는 경우에는 꼭 큰따옴표를 붙여야 합니다.
- SELECT 절에서는 산술연산(+,-,*,/)이 가능합니다
필기구의 실제 구매가격 구하기
SELECT 필기구가격 + 부가세 AS 구매가격
FROM 필통
필기구 한 다스(12자루) 가격 구하기
SELECT 필기구가격 * 12 AS 한 다스 가격
FROM 필통
2️⃣ FROM : 원하는 데이터가 있는 테이블
FROM은 내가 원하는 데이터 값이 위치하는 테이블 명을 정의하는 명령어입니다.
가방 안에 필통이 있는 것처럼 큰 데이터베이스 안에 여러 개의 테이블이 존재하기 때문에 내가 원하는 데이터가 어느 테이블에 있는지 잘 알아야 합니다.
SELECT 꼬리빗
FROM 가방 안에 화장품 파우치
SELECT 컴싸
FROM 가방 안에 필통
3️⃣ WHERE : 특정 조건에 맞는 데이터를 필터링
WHERE 절은 내가 원하는 조건에 부합하는 값을 조회하기 위해 필터링하는 명령어입니다.
WHERE 절에는 비교연산자와 논리연산자를 사용할 수 있고 이를 통해 필터링할 수 있습니다.
비교연산자
단일조건에 대한 크기비교나 동등비교를 할 수 있습니다.
- 크기 비교: <, <=,>=,> 모두 사용 가능
- 동등 비교: = (같다),!=, <>(같지 않다)
같지 않다:!=, <> 등 사용 가능
1,000원짜리 필기구 이름 조회하기
SELECT 필기구이름
FROM 필통
WHERE 구매가격 = 1000
1,000원보다 비싼 필기구 이름 조회하기
SELECT 필기구이름
FROM 필통
WHERE 구매가격 > 1000
구매일자가 24년 1월 1일인 필기구 이름 조회하기
SELECT 필기구이름
FROM 필통
WHERE 구매일자 = '2024-01-01'
필기구 종류가 연필이 아닌 필기구 이름 조회하기
SELECT 필기구이름
FROM 필통
WHERE 필기구종류 != '연필'
논리연산자
여러 개의 조건을 나열하거나 범위 조건을 정의할 수 있습니다.
- AND: 여러 조건을 나열할 때 씁니다. AND로 나열된 조건은 교집합이 되어 나열한 모든 조건에 부합하는 행만 출력됩니다. (~~ 이면서)
1,000원짜리이면서 연필인 필기구 이름 조회하기
SELECT 필기구이름
FROM 필통
WHERE 구매가격 = 1000
AND 필기구종류 = '연필'
- OR: 여러 조건을 한 번에 조회할 때 씁니다. OR로 나열된 조건은 합집합이 되어 나열한 조건 중 하나라도 부합하는 행이 모두 출력됩니다. (~~ 이거나)
연필이거나 볼펜인 필기구 이름 조회하기
SELECT 필기구이름
FROM 필통
WHERE 필기구종류 = '연필'
OR 필기구종류 = '볼펜'
- LIKE: 정확한 조건보다는 특정 패턴을 가진 행을 조회할 때 씁니다. %를
필기구이름에 "펜"이 들어가는 필기구 이름 조회하기
SELECT 필기구이름
FROM 필통
WHERE 필기구이름 LIKE '%펜%'
- BETWEEN A AND B: 범위 조건을 조회할 때 씁니다.
필기구 가격이 1,000~2,000원인 필기구 이름 조회하기
SELECT 필기구이름
FROM 필통
WHERE 필기구가격 1000 AND 2000
- IS NULL: 컬럼값이 NULL 인 경우를 조회합니다.
- NOT: 논리연산자와 함께 쓸 수 있고 조건의 여집합을 조회할 때 씁니다.
728x90
반응형
'데이터분석' 카테고리의 다른 글
[SQL 기본] 테이블 명세서란 (0) | 2024.02.07 |
---|---|
[SQL 기본] 요약정리_집계함수, GROUP BY, HAVING, ORDER BY (1) | 2024.01.30 |
[SQL 기본] ORDER BY와 별칭(ALIAS) (0) | 2024.01.22 |
[SQL 기본] 집계함수_GROUP BY (2) | 2024.01.11 |
[SQL 기본] 집계 함수 (2) | 2024.01.08 |