SQL(데이터분석_사전캠프)

사전캠프 SQL 1주차 - SQL 기초문법 알아보기

pinehouse13 2025. 4. 22. 17:34

어제 계획한대로 SQL 공부를 시작했다.

 

파이썬 1주차와 비교해보면 SQL쪽의 난이도가 훨씬 쉬워보이는건 아직 내가 초심자라 그럴거라 생각한다.

 

 

오늘의 핵심 학습 키워드

#SELECT  #FROM  #WHERE

 

정말이다. 저 3개의 키워드면 일단 SQL에서 왠만한 데이터 조회는 다 되는 것 같다.

 

SQL 설치 및 서버 접속이 완료되었다는 가정 하에, 우선 상기 명령문을 사용해 기본적인 데이터 조회를 시작해보자.

 

1. 데이터 전체 조회하기

 

우선, 조건문에 대한 예시를 보자.

더보기

select *

from food_orders

 

from은 테이블을 선택하는 기능을 가지고 있다.

 

현재 내가 듣고있는 강의의 SQL 서버에는 food_orders, payments, customers 3 개의 테이블이 존재하고 있으며,

 

각각의 테이블에는 상이한 데이터들이 적재되어 있기 때문에, 필요에 따라 원하는 테이블을 선택해야 할 필요가 있다.

 

select는 선택한 테이블에서 불러올 컬럼을 결정하는 기능을 가지고 있다.

 

select 뒤에 컬럼명 입력을 통해 특정 컬럼들의 데이터만 출력할 수 있으며, 전체 컬럼을 보고싶다면 컬렴명 대신 *를 입력해주면 된다.

 

상기 코드를 입력하고 실행 시 아래와 같이 데이터가 노출된다.

 

 

 

2. 조건에 맞는 데이터 조회하기

 

원하는 테이블에서 원하는 컬럼의 정보 조회는 select와 from으로도 가능하나, 더 자세한 조건을 두고 데이터를 보고싶다면 어떻게 해야할까?

 

이런 경우에 사용하는 것이 where 이다.

 

만약 cuisine_type이 Korean인 데이터만 보고싶다고 한다면, 예시와 같이 입력을 통해 원하는 데이터만 출력할 수 있다.

더보기

select *

from food_orders

where cuisine_type = 'Korean'

where문은 [where 

필터링 조건

] 의 형식으로 입력할 필요가 있다.

 

필터링 조건의 형식은 여러 가지가 있으며, 오늘 배운 내용은 다음과 같다.

 

 

 

1. 비교연산자 입력하기

= 같다 age=21
gender=’female’
<> 같지 않다 (다르다) age<>21
gender<>’female’
> 크다 age>21
>= 크거나 같다 age>=21
< 작다 age<21
<= 작거나 같다 age<=21

 

예시의 경우, cuisine_type이 Korean인 데이터를 출력하는 기능을 가지고 있으며, 출력 시 다음과 같은 데이터가 노출된다.

cuisine_type이 Korean인 데이터만 출력한 경우

 

만약 price가 10,000원 이상인 데이터만 출력하고 싶다면, where 절을 다음과 같이 바꿔주면 된다.

 

where price>=10000

price가 10,000원 이상인 데이터만 출력한 경우

 

 

 

 

2. BETWEEN, IN, LIKE 등을 사용하기

 

- BETWEEN은 조건범위를 지정하고, 해당 범위 내의 데이터들을 출력한다. 

 

 컬럼명 BETWEEN a and b 형식으로 입력하며, 컬럼의 데이터가 a와 b 사이에 해당하는 정보만 출력하는 기능을 가지고 있다.

 

만약 price가 10,000원에서 20,000 사이의 데이터만 출력하고 싶다면, 다음과 같이 입력하면 된다.

 

price가 10,000에서 20,000 사이의 데이터 출력결과

 

 

 

 

- IN은 조건을 지정하고, 지정한 조건과 동일한 데이터들을 출력한다.


 
컬럼명
 IN (a, b, c) 형식으로 입력하며, 컬럼의 데이터가 a나 b, c에 해당하는 정보만 출력하는 기능을 가지고 있다.

 

만약 cuisine_type이 Korean이거나 Japanese인 데이터만 출력하고 싶다면, 다음과 같이 입력하면 된다.

 

cuisine_type이 Korean이거나 Japanese인 데이터 출력결과

 

 

 

 

 

- LIKE는 조건을 지정하고, 데이터 일부에 지정된 조건이 포함된 데이터들을 출력한다.  


컬럼명
 LIKE %a% 형식으로 입력하며, 컬럼의 데이터 내부에 a가 포함된 정보만 출력하는 기능을 가지고 있다.

 

예를들어, restaurant_name에 sushi가 포함된 데이터만 출력하고 싶다면, 다음과 같이 입력하면 된다.

restaurant_name에 sushi가 포함된 데이터 출력결과

 

만약 restaurant_name의 가장 첫 글자가 sushi로 시작하거나, 마지막 글자가 sushi로 끝나는 가게를 찾고싶다면 어떻게 해야할까?

 

방법은 간단하다.

 

LIKE 조건을 입력할 때, a%와 같이 %를 a 뒤에만 붙여주면 a로 시작하는 데이터만을 출력하며, %a와 같이 a 앞에만 %를 입력하는 경우에는 반대로 a로 끝나는 데이터만을 출력하게 된다.

sushi로 시작하는 데이터 출력결과(좌측)과 sushi로 끝나는 데이터 출력결과(우측)

 

 

3. 복수의 조건들을 조합하기

 

상기 조건들은 아래의 명령어를 통해 여러개를 조합해서 사용하는 것도 가능하다.

AND 그리고 age>20 and gender=’female’
→ 나이가 20세 이상이고, 여성
OR 또는 age>20 or gender=’female’
→ 나이가 20세 이상이거나, 여성
NOT 아닌 not gender=’female’
→ 여성이 아닌

 

만약 다음과 같은 조건을 전부 만족하는 출력하고 싶다면 어떻게 해야 할까?

1. price가 10,000~20,000

2. restaurant_name에 cafe라는 문구가 들어감

3. cuisine_type이 Mexican이거나 American이 아닌 데이터

 

정답은 아래와 같다

1번, 2번 3번 조건을 전부 만족하는 데이터

 

 

 

 

 

4. 후기

 

SQL 기초문법에 대해 공부했는데, 어제 배웠던 파이썬보다는 쉬운 것 같다.

 

파이썬 1주차 강의는 전부  수강했고, 팀원들도 SQL 강의 위주로 수업을 듣고 있으니 내일도 SQL 강의를 들을 예정이다.