1. CASE 문법
조건식을 따질 때 사용한다.
CASE
when 조건1 then 값1
when 조건2 then 값2
when 조건3 then 값3
END
여기서 주의해야할 점은, 콤마가 없다는 것이다.
사용예제)
select *,
case
when no=1 then 'first'
when no=2 then 'second'
else 'ok'
end as 'show'
from 테이블명;
→ 해석:
1) 테이블에서 모든 fields를 추출한다 (*)
2) no가 1일 때 first
3) no가 2일 때 second
4) 나머지는 ok로
5) 조건값으로 추출된 필드명은 show로
2. IF 문법
case와 동일하게 조건식을 따질 때 사용한다.
IF ( 필드명='비교값', 값1, 값2 )
필드명이랑 비교값이 같으면 값1, 아니면 값2
사용예제)
select * ,
IF( no=1, '1등', '1등이 아니다')
from 테이블명;
→ 해석:
1) 테이블에서 모든 fields를 추출한다 (*)
2) no가 1일 때 '1등',
3) 아니라면 '1등이 아니다'로
3. 집계함수 + IF
select count( if (no=1, '일', null) ) as '일이몇개' from 테이블명;
→ 해석:
1) 테이블에서 no가1인 값이면 일
2) 아니면 null
3) 위 조건에서 '일'인 값을 count하고
4) 필드명은 일이몇개로 출력
위와 같은 결과물을 얻는 문법: (sum 사용)
select sum( if (no=1, 1, 0)) as '일이몇개' from 테이블명;
4. GROUP BY
컬럼의 data값을 그룹화하여 결과를 보고자할 때 사용한다.
SELECT 컬럼
FROM 테이블
GROUP BY 컬럼;
group by는 대표값만 나온다.
'배운 내용 정리 > MYSQL' 카테고리의 다른 글
rownum (0) | 2020.03.05 |
---|---|
날짜함수, 카운트, 집계함수 (0) | 2020.01.27 |
[학습정리] 2020.01.14 - outer join, repeat (0) | 2020.01.16 |
[학습정리] 2020.01.14 - inner join (0) | 2020.01.15 |
[학습정리] 2020.01.10 - having (0) | 2020.01.11 |