
MySQL If문
SELECT IF (1 > 2, '1는 2보다 크다.', '1은 2보다 작다.');
MySQL IFNULL문
IFNULL(A,B)은 A가 NULL일 시 B를 출력한다.
SELECT
IFNULL('A', 'B'),
IFNULL(NULL, 'B');
MySQL CASE문
SELECT
CASE
WHEN -1 > 0 THEN '-1은 양수다.'
WHEN -1 = 0 THEN '-1은 0이다.'
ELSE '-1은 음수다.'
END;
MySQL 조건에 따라 집계된 값 받아오기
GROUP BY는 조건에 따라 집계된 값을 가져온다.
SELECT
Country, City,
CONCAT_WS(', ', City, Country)
FROM Customers
GROUP BY Country, City;

GROUP BY는 다음과 같이, 해당 GROUP별로의 개수를 측정할 수 있다.
SELECT
COUNT(*), OrderDate
FROM Orders
GROUP BY OrderDate;

GROUP BY를 통해서 다음과 같이 해당하는 위치에 값들을 셀 수 있다.
SELECT
CONCAT_WS(', ', City, Country) AS Location,
COUNT(CustomerID)
FROM Customers
GROUP BY Country, City;

이 GROUP BY에서 WITH ROLLUP을 이용하면 전체의 집계값을 구할 수 있다. WITH ROLLUP을 이용하면, ORDER BY는 이용할 수 없다.
SELECT
Country, COUNT(*)
FROM Suppliers
GROUP BY Country
WITH ROLLUP;
다음과 같이 마지막 행에 집계값이 나온다.

'Database > MySQL' 카테고리의 다른 글
| Mac Mysql root계정 비밀번호 분실 해결하기 (0) | 2022.01.11 |
|---|---|
| Mac에서 Mysql 설치하고 실행하기 (0) | 2022.01.11 |
| MySQL 시간/날짜 관련 함수 알아보기 (0) | 2021.11.29 |
| MySQL 문자열 관련 함수 알아보기 (0) | 2021.11.29 |
| MySQL 연산자 알아보기 (0) | 2021.11.29 |