문법
숫자 연산
SELECT food_preparation_time, delivery_time, food_preparation_time + delivery_time as total_time FROM food_orders
일반적인 사칙연산과 같이 sql에서도 + - * / 을 이용하여 숫자 연산이 가능하다. 단, 사용하려는 쿼리가 숫자 형식인지 반드시 확인하고 사용해야 한다.
SUM
SELECT SUM(food_preparation_time) total_food_preparation_time FROM food_orders
해당 쿼리 내 데이터를 전부 더한다.
AVG
SELECT AVG(age) as average_of_age FROM customers c
해당 쿼리 내 데이터의 평균값.
COUNT
SELECT COUNT(1) count_of_orders, COUNT(DISTINCT customer_id) count_of_customers FROM food_orders fo
갯수를 구한다. 모든 데이터의 수를 원할 때는 * 혹은 1 을 사용한다.
더보기
DISTINCT : 해당 쿼리가 몇개의 데이터 값을 가지고 있는지 구할 때 사용한다.
GROUP BY
SELECT restaurant_name , MAX(price) max_price FROM food_orders fo GROUP BY restaurant_name
같은 값을 가진 행끼리 하나의 그룹으로 뭉쳐준다.
ORDER BY
SELECT restaurant_name , MAX(price) max_price FROM food_orders fo GROUP BY restaurant_name ORDER BY MAX(price) DESC
해당 컬럼을 기준으로 오름차순 or 내림차순 정렬.
더보기
생략 / ASC : 오름차순 정렬
DESC : 내림차순 정렬
ORDER BY 컬럼1, 컬럼2 의 경우: 컬럼1을 기준으로 정렬한 다음, 컬럼2를 기준으로 정렬한다.
퀴즈
중복제거하기
https://school.programmers.co.kr/learn/courses/30/lessons/59408
더보기
SELECT COUNT(DISTINCT NAME) FROM ANIMAL_INS WHERE NAME is not NULL
동물의 아이디와 이름
https://school.programmers.co.kr/learn/courses/30/lessons/59403
더보기
SELECT ANIMAL_ID, NAME FROM ANIMAL_INS ORDER BY ANIMAL_ID
동물 수 구하기
https://school.programmers.co.kr/learn/courses/30/lessons/59406
더보기
SELECT COUNT(1) FROM ANIMAL_INS