서론>>
작년 여름방학에 SQL 공부를 했다가 그 이후로 캡스톤과 졸업작품 등으로 오랫동안 소홀했다 🫠,,
다시 공부하고 싶다고 생각하던 와중에 최근 레디미 온보딩 3기 활동을 시작하면서 시작할 기회를 잡게 되었다..!
작년엔 Oracle 문법을 기준으로 연습했는데 이번엔 MySQL을 다루면서 MySQL 문법을 공부하게 되었다.
Oracle과 MySQL 문법에는 크지 않지만 미세하게 차이가 있는데 이번 기회에 정리하면서 공부해보고자 한다.
우선 예전에 정리해뒀던 Oracle 문법으로 시작 ✏️
계속해서 업데이트할 예정이다 🤭
1. REGEXP_LIKE를 이용한 데이터 탐색 쿼리
Oracle >>
예시1) 모음으로 시작하는 city name 출력 => '^[해당문자]'
=> WHERE REGEXP_LIKE (CITY, '^A|^E|^I|^O|^U');
=> WHERE REGEXP_LIKE (CITY, '^[AEIOU]', 'i');
예시2) 모음으로 끝나는 city name 출력 => '[해당문자]$'
=> WHERE REGEXP_LIKE (CITY, '[AEIOU]$', 'i');
2. SQL 함수 정리
1) SUBSTR 함수: 문자열의 일부 데이터를 추출하는 함수
Oracle >>
SELECT SUBSTR(NAME, 1, 1); # NAME 칼럼의 첫 문자, 즉 성을 추출 (첫 번째 문자부터 첫 번째 문자까지)
SELECT SUBSTR(NAME, -4); # NAME 칼럼의 마지막 네 자리 추출
2) 문자열 합치는 함수
Oracle >> SELECT Name||' '||Occupation # '||' 기호 사용
MySQL >> CONCAT('A', 'B', 'C') # CONCAT 함수 사용
3) UPPER, LOWER, INTICAP 함수
Oracle >>
UPPER 함수: 모든 문자를 대문자로 변환
LOWER: 모든 문자를 소문자로 변환
INTICAP: 첫 문자는 대문자, 나머지는 소문자로 변환
4) CEIL, ROUND, TRUNC 함수
Oracle >>
CEIL: 소수점 올림
ROUND: 소수점 반올림 # ROUND({value}, N): 소수점 N자리에서 반올림
TRUNC: 소수점 버림
MySQL >>
TRUNCATE: 소수점 버림
3. 알아둬야 할 문법 개념
Oracle >>
조건문:: CASE WHEN (조건) THEN 결과 --- END;
- WHEN절에서의 순서는 중요 (첫 번째 WHEN절을 만족하면 그 다음 WHEN절은 의미X)
MySQL >>
상위 N개 출력:: LIMIT (N)
'알고리즘 > SQL' 카테고리의 다른 글
[MySQL] SQL HackerRanks_Top Earners (0) | 2022.04.05 |
---|---|
[Oracle] 오류 'group function is nested too deeply' (0) | 2022.04.05 |
[MySQL] SQL HackerRanks_The Bundler (0) | 2022.04.04 |
SQLD 공부 계기와 공부 방법 (0) | 2022.01.23 |
댓글