COUNT(*) : 모든 행 수 세준다
COUNT(컬럼명) : 그 컬럼명의 개수 세준다. 컬럼에 NULL이 있으면 빼고 센다.
COUNT(DISTINCT 컬럼명)]: 컬럼의 값을 중복없이 세준다.
합계
NULL값을 뺀 개수만큼 나눠준다.
데이터를 없는 거라고 하겠다. AVG(Visits)
데이터를 0으로 취급하겠다. SUM(Visits)/COUNT(*)
그룹핑
그룹한 것에 대한 조건 (WHERE)
조건을 달아준다. IF문. CASE
~ END
SELECT CASE
WHEN categoryid = 1 THEN '음료'
WHEN categoryid = 2 THEN '조미료'
ELSE '기타'
END AS 'categoryName', *
FROM products
CASE문과 함께 *를 써줘서 조건을 제대로 썼는지 확인.
CASE는 조건의 순서도 중요!
파이썬의 elif
와 같다고 생각하면 된다.
CASE의 결과를 집계해주고 싶을 때는 CASE
~END
까지를 집계함수로 묶어준다.
AVG(CASE WHEN categoryid = 1 THEN price ELSE NULL END)