[MYSQL] 사칙연산 & 문자다루는 함수

yellowbutter·2024년 5월 16일
0

MYSQL

목록 보기
6/10
post-thumbnail

🍎 위 내용은 코딩애플 SQL & DATABASE 강의를 듣고 스스로 정리한 내용입니다.

1. 컬럼 사칙연산

덧셈은 + , 뺄셈은 - , 곱셈은 * , 나눗셈은 /

  • SELECT 사용금액 * 0.9 FROM client
  • SELECT 사용금액 * 0.9 AS 부가세제외, 연체횟수 + 100 FROM client

2. 컬럼끼리의 연산

SELECT 사용금액 / 결제횟수 FROM client

3. 문자 덧셈, 공백제거, 대체

📌 문자 덧셈

SELECT CONCAT(고객명, 고객등급) FROM client

  • CONCAT(김만두, 골드) => 김만두골드
  • CONCAT(김만두, ' is ',골드) => 김만두 is 골드

MySQL, MariaDB는 CONCAT() 쓰면 되는데
그 외의 Postgres, Oracle 등의 DBMS는 || 기호를 사용해서 문자를 보통 합친다.

SELECT 고객명 || ' is ' || 고객등급 FROM client

혹은 + 기호 쓰는 곳도 있다.

📌 공백제거

SELECT TRIM(고객명) FROM client

  • trim은 문자열의 앞과 뒤의 공백을 제거한다.

📌 대체

SELECT REPLACE('호빵이 좋은 호빵맨', '호빵', '치킨')
'치킨이 좋은 치킨맨'

✨ REPLACE(바꿀문자, 이걸찾아서, 이걸로바꾸셈) ✨

📌 원하는 문자만 뽑기

SELECT SUBSTR('hobby', 3, 2) => bb

✨ SUBSTR(문자, 몇번째부터, 몇자뽑기) ✨

📌 문자의 일부를 다른 단어로 교체

SELECT INSERT('cookie@velog.com', 1, 4, 'candy')
cookie@velog.com => candy@velog.com

✨ INSERT(바꿀문자, 몇번째부터, 몇자를, 이걸로바꾸자) ✨

📌 특정 문자에 있는 모든 공백을 제거해서 출력

trim은 앞뒤 공백만 제거해주기 때문에
replace를 사용한다.

SELECT REPLACE(client, ' ', '')

✨ SELECT REPLACE(컬럼명, ' ', '') ✨

📌 휴대폰 뒷자리 4글자만 출력

substr을 사용해도 되지만 휴대전화번호 길이가 고정이 아니라면

SELECT RIGHT(번호, 4) from 테이블명

RIGHT/LEFT 문법을 사용하기! (구글링)

profile
기록은 희미해지지 않는다 🐾🧑‍💻

0개의 댓글