오늘 겨우 걸음마 잘 한다고 거만해졌다가 바로 혼나는 중... 난이도가 확 올랐다!
SQL
id | name | position | salary | hire_date |
1 | 르탄이 | 개발자 | 30000 | 2022-05-01 |
2 | 배캠이 | PM | 40000 | 2021-09-25 |
3 | 구구이 | 파트장 | 35000 | 2023-06-01 |
4 | 이션이 | 팀장 | 50000 | 2021-07-09 |
[예시용 테이블]
- REPLACE 함수
REPLACE(name,'이','아')
name 컬럼에서 '이'라는 값을 전부 '아'로 바꿔 보여준다는 뜻
- SUBSTRING 함수
SUBSTRING(hire_date,1,2)
hire_date 컬럼에서, 첫번째 자부터, 두 글자를 보여준다는 뜻
SUBSTR로 써도 동일한 기능
마지막 항 비우면 설정한 순서 글자부터 맨 마지막 글자까지 전부 조회함
- CONCAT 함수
CONCAT(name,'의 입사일은 "',hire_date,'"입니다.')
여러 컬럼의 문자를 합쳐 보여주는 기능 => 이선이의 입사일은 "2021-07-09"입니다.
- IF 함수
IF(position='팀장','Leader','Follower')
position 값이 '팀장'이면 'Leader'를, 그렇지 않으면 'Follower'를 출력하라는 뜻
조건이 하나일 때 활용하기 좋음
- CASE문
CASE WHEN position='팀장' THEN salary+5000
WHEN position='파트장' THEN salary+3000
ELSE salary+1000 END
조건1은 '팀장'일 때, 조건1은 만족하면 salary에 더하기 5000,
조건2는 '파트장'일 때, 만족하면 salary에 더하기 3000,
조건1도 조건2도 만족하지 않는 나머지 경우일 때, salary에 더하기 1000
조건이 여럿일 때 활용하기 좋음
※ 깨알 정보들
- SQL에서 같지 않다는 의미로 <>, !=, NOT 전부 가능했는디, 정확한 차이가 있는지는 더 경험해보며 파악하자
- GROUP BY 하고 숫자 써주면, SELECT에서 그 수의 순서에 해당하는 순서의 컬럼값이 기준으로 선택됨
select 컬럼a, 컬럼b, 컬럼c
from 테이블
group by 1, 2
이러면 컬럼a와 컬럼b 기준!
'TIL&WIL' 카테고리의 다른 글
241010 TIL (1) | 2024.10.10 |
---|---|
241009 TIL (0) | 2024.10.09 |
241007 TIL (1) | 2024.10.07 |
24년 10월 1주차 WIL (2) | 2024.10.04 |
241004 TIL (1) | 2024.10.04 |