원하는 곳에서 데이터를 가져오는 기본 명령어
WHERE 절에 여러 조건을 적용하기
논리연산이다.| 논리연산자 | 의미 | 예시 |
|---|---|---|
| AND | 그리고 | age > 20 and gender='female' > 나이가 20세 이상이고, 여성 |
| OR | 또는 | age > 20 or gender='female' > 나이가 20세 이상이거나, 여성 |
| NOT | 아닌 | not gender='female' > 여성이 아닌 |
여러 조건을 적용하여 데이터 필터링 실습
select *
from food_orders
where cuisine_type='Korean' and price>=30000;
select *
from payments
where pay_type='card' or vat<=0.2;
select # '데이터 조회' 의 명령어로 필수 구문
from # '어디에서 데이터를 조회할까' 의 명령어로 필수 구문
where # 조건을 지정해 주는 구문숫자 연산 기호를 사용하기
select food_preparation_time,
delivery_time,
food_preparation_time + delivery_time as total_time
from food_orders;
| 연산 | 설명 |
|---|---|
| + | 더하기기 |
| - | 빼기 |
| * | 곱하기 |
| / | 나누기 |
기본연산, 합계와 평균 구하기
select sum(food_preparation_time) total_food_preparation_time,
avg(delivery_time) avg_food_delivery_time
from food_orders;
전체 데이터의 갯수 구하기
select count(1) count_of_orders,
count(distinct customer_id) count_of_customers
from food_orders;
// 주문건수와 주문한 고객 수 구하기기데이터의 범위, 최솟값과 최댓값 구하기
select min(price) min_price, max(price) max_price
from food_orders;WHERE 절로 원하는 데이터를 뽑고 계산해보기
select count(1)
from food_orders
where price>=30000;
select avg(price)
from food_orders
where cuisine_type='korean';
카테고리별로 숫자 연산을 간단하게 하기
GROUP BY 의 기본 구조
select 카테고리컬럼(원하는 컬럼 아무거나),
sum(계산 컬럼)
from #
group by 카테고리컬럼(원하는 컬럼 아무거나)
select cuisine_type,
sum(price) sum_of_price
from food_orders
group by cuisine_type;
GROUP BY 를 이용한 카테고리별 연산 실습
select restaurant_name,
max(price)
from food_orders
group by restaurant_name;
select pay_type,
max(date)
from payments
group by pay_type;
Order by 의 기본구조
select 카테고리컬럼(원하는 컬럼 아무거나),
sum(계산컬럼)
from #
group by 카테고리컬럼
order by 정렬을 원하는 컬럼 (카테고리컬럼, sum(계산컬럼) 둘 다 가능)
select cuisine_type,
sum(price) as "주문 금액 합계"
from food_orders
group by cuisine_type
order by sum(price) asc;
Order by 를 이용한 데이터 정렬 실습
select restaurant_name,
max(price) as price_of_max
from food_orders
group by restaurant_name
order by max(price) desc;
select *
from customers
order by name asc;