◆ SQL 함수
- 함수를 쓸 때는 조심해야함 -> 성능이 좋아질 수도 있지만 나빠질 수도 있다.
▶ 제어 흐름 함수
- 프로그램의 흐름을 제어하는 함수
● IF 함수 ★
- 수식과 참일 때 반환할 값과 거짓일 때 반환할 값을 입력하면, 수식의 진리값에 따른 값이 반환
![](https://blog.kakaocdn.net/dn/lJQyX/btsxLkkd8zu/jRRR25B5kPfNqQPO8NBfBk/img.png)
![](https://blog.kakaocdn.net/dn/m0mbq/btsxtVrXgs2/3KK5KNHBflDY1FeZKHoUJ0/img.png)
![](https://blog.kakaocdn.net/dn/zOCGA/btsxsnhZwRa/aPhLVE8xyFeYSkXLgiD2s1/img.png)
![](https://blog.kakaocdn.net/dn/ucKAV/btsxieNsDHt/kndOEMZnoUndpAkkfmuh1K/img.png)
● CASE 함수★
- 수식(조건)을 여러 개 사용할 수 있는 함수
![](https://blog.kakaocdn.net/dn/kUdJx/btsxvHG2nja/iu22EQiJKMi5uJI2vpzcaK/img.png)
![](https://blog.kakaocdn.net/dn/bOwihQ/btsxSBFZqxN/HV6SBmfjN3fCbca5vCQEGk/img.png)
![](https://blog.kakaocdn.net/dn/dMVdhH/btsxrYpa5dj/Pr9iYiVcUJxWmppRIwkSu1/img.png)
![](https://blog.kakaocdn.net/dn/cNJoaI/btsxqtiTjAs/pyKEJBu6cc3oZZYr4KJ6k0/img.png)
![](https://blog.kakaocdn.net/dn/pAdpz/btsxvI0fnKk/4qmnNPmiLrYYKifNiliOn0/img.png)
![](https://blog.kakaocdn.net/dn/Hcrm5/btsxtXQPT9R/koc9k9fbwRayM6nDpvLWB0/img.png)
● IFNULL 함수★
- 수식1이 NULL이면 수식2를 반환하고, 그렇지 않으면 수식1을 반환
![](https://blog.kakaocdn.net/dn/cD3q7C/btsxsnhZwQ2/NJsmEpvKYwfdBa5qhkWvqK/img.png)
![](https://blog.kakaocdn.net/dn/cwSJWN/btsxkFxe5HN/AU8sACiEDgC1uUWYT76zP0/img.png)
▶ 문자열 함수
- 문자열을 조작하는 함수
● CONCAT ★
- 문자열을 이을 때 사용
![](https://blog.kakaocdn.net/dn/v4oK5/btsxriuvbEX/iX3TNmzmQFJBFd2epsfP1k/img.png)
![](https://blog.kakaocdn.net/dn/cjTEEQ/btsxHZAuvwM/VZTawaFeRszMZ0TtMKLtW1/img.png)
● CONCAT_WS★
- 구분자와 함께 문자열을 이을 때 사용
![](https://blog.kakaocdn.net/dn/mmP4A/btsxzYu6Uxm/XMUEZbh89JKXLGeiZyhcuk/img.png)
![](https://blog.kakaocdn.net/dn/bEhBo4/btsxrX4T0cZ/wUN5IFIqTXBDKUDP4K8r70/img.png)
● FORMAT 함수★
- 숫자를 소수점 아래 자릿수까지 표현(1000단위마다 쉼표 표시)
![](https://blog.kakaocdn.net/dn/b1CizZ/btsxp2eNuNB/DdFZ62mDHiHRGm74zQH9ok/img.png)
![](https://blog.kakaocdn.net/dn/birkfE/btsxigYPQTH/Tvdng0TyhCBHmuJ46nRFc0/img.png)
● INSERT 함수★
- 기준 문자열의 위치부터 길이만큼 삽입할 문자열로 변경
![](https://blog.kakaocdn.net/dn/b0sPpC/btsxidnux0g/eHAKdUvaIIJJg6YpUAyl10/img.png)
![](https://blog.kakaocdn.net/dn/bRNaQs/btsxslR205I/Qk0cWfKLAMnWJ5EvA0r2P1/img.png)
● TRIM 함수★
- 문자열의 양쪽 공백을 제거
- LTRIM(왼쪽 공백 제거), RTRIM(오른쪽 공백 제거)
![](https://blog.kakaocdn.net/dn/dzKLHe/btsxrXjvUXg/XUo6lcvdiRWKSjYTzzkNx1/img.png)
![](https://blog.kakaocdn.net/dn/b3Jwdd/btsxSBeUXcj/aa1SBemkg2DLDJh1UxR4r1/img.png)
● REPLACE 함수★
- 문자열에서 원래 문자열을 찾고 바꿀 문자열로 변경
![](https://blog.kakaocdn.net/dn/b2IxEg/btsxz1eimVI/qCU3w3DJ03SEmPri3biwak/img.png)
![](https://blog.kakaocdn.net/dn/d0oBY1/btsxkEZu0aP/2TghGrDuFBe5SgnjK0I1OK/img.png)
● SPACE 함수
- 공백을 반환하는 함수
![](https://blog.kakaocdn.net/dn/bXDlHx/btsxkDe5ilv/yhpkEyInmJECvGsbxeb2Ak/img.png)
![](https://blog.kakaocdn.net/dn/bbNpRl/btsxSBTwxqD/Uhg4372kr1TiLHvWmSkYRK/img.png)
● SUBSTRING 함수
- 시작 위치부터 길이만큼 문자를 반환
![](https://blog.kakaocdn.net/dn/bQ4N8N/btsxkj2hr1z/2v8cIh31RWhpr1TPU0A8Uk/img.png)
![](https://blog.kakaocdn.net/dn/5MH2t/btsxrV0hY37/Fm6EdyWh6R2M4OYoCeGc60/img.png)
● SUBSTRING_INDEX 함수★
- 문자열 시작부터 구분자가 횟수만큼 나오면 그 이후는 버림
![](https://blog.kakaocdn.net/dn/MkSln/btsxsQqRTNF/a17Vtr6dSpckyU44Mdg2U0/img.png)
![](https://blog.kakaocdn.net/dn/bcNaZj/btsxrmp661v/aJol3hpKelPkxcxxMP6tAK/img.png)
'DBMS(SQL)' 카테고리의 다른 글
트랜잭션(Transaction) (6일차) (0) | 2023.10.09 |
---|---|
DBMS 실습 - SQL 함수 [자주쓰는 함수] - 2 (5, 6일차) (0) | 2023.10.09 |
DBMS 실습 - INSERT, SELECT, UPDATE, DELETE(4일차) (0) | 2023.10.09 |
데이터모델링, ERD(Entity Relationship Diagram) (3일차) (0) | 2023.10.09 |
DBMS실습 - CREATE, ALTER, DROP(2,3일차) (0) | 2023.10.09 |