📚 CS/데이터베이스

[MySQL] 문법 정리

수댕ʕت̫͡ʔ 2024. 11. 1. 00:12

프로그래머스 SQL 고득점 level 1 ~ 2 다 풀고 정리하는 SQL 문법 정리

 

1. 평균 구하기

1) AVG(컬럼)

2. 반올림

1)ROUND(컬럼, 소수점 자리수) 

ex) ROUND(컬럼, 2) : 소수섬 3번째자리에서 반올림

3. 소숫점 버리기

1) FLOOR(컬럼) : 소수점 아래 버림

2) CEIL(컬럼) : 소수점 위로 불림

4. 정렬

1) ORDER BY 컬럼 ASC, ORDER BY 컬럼 DESC

- ASC : default, 오름차순

- DESC : 내림차순

5. 날짜 형식

1) date_format(DATE, '%y-%m-%d) : 날짜 형식 변환

ex) %y는 두 자리 연도 (20), %Y는 네 자리 연도 (2020)

2) 연, 월, 일, 시간, 분 구하기

ex) YEAR(DATE), MONTH(DATE), DAY(DATE), HOUR(DATE), MINUTE(DATE)

6. NULL 값 처리

1) IS NOT NULL : NULL이 아니면

2) IS NULL : NULL이면

3) IFNULL(컬럼, '널임') : 컬럼이 NULL일 경우 '널임'으로 표시

7. 문자열 검색

1) 컬럼 LIKE '%찾고자하는문자%'

- '%문자%' : 문자열 내에 '문자' 포함 여부 확인

- '%문자' : '문자'로 끝나는 항목 검색

- '문자%' : '문자'로 시작하는 항목 검색

 

2) 컬럼 IN ('문자', '문자') : 문자열이 목록에 포함되어 있는지 확인

8. 비트 연산

1) 부모 & 자식 = 부모 

9. 상위 몇개만 추출

1) LIMIT 숫자 : 지정한 개수만큼 상위 항목 조회

ex) LIMIT 1 : 맨 위 한개만 조회

10. 최대, 최소

1) MAX(컬럼)

2) MIN(컬럼)

11. 중복 제거

1) distinct(컬럼)

12. 문자열 합치기

1) concat(컬럼 , '문자')

13. 문자열 찾기

1) FIELD(찾는 문자열, '문자', '문자') : 특정 문자열 위치 확인

14. ~ 일 때, ~ 하자

1) CASE WHEN 조건 THEN 결과 ELSE 다른결과 END : 조건에 따른 결과 반환

15. 날짜 차이 구하기

1) DATEDIFF(END_DATE, START_DATE) : 두 날짜 간 차이 계산

16. 문자열 부분 찾기

1) SUBSTR(문자열, 시작 위치, 끝 위치) : 특정 위치에서 문자열 추출

2) LEFT(문자열, 가져올 갯수) : 왼쪽에서부터 지정한 개수만큼 문자열 추출

3) RIGHT(문자열, 가져올 갯수) : 오른쪽에서부터 지정한 개수만큼 문자열 추출