1. 숫자 관련 함수
- ABS(숫자) - 절대값 출력.
- CEILING(숫자) - 값보다 큰 정수 중 가장 작은 수.
- FLOOR(숫자) - 값보다 작은 정수 중 가장 큰 수[실수를 무조건 버림(음수일 경우는 제외)].
- ROUND(숫자,자릿수) - 숫자를 소수점 이하 자릿수에서 반올림.(자릿수는 양수,0,음수를 갖을 수 있다.)
- TRUNCATE(숫자,자릿수) - 숫자를 소수점 이하 자릿수에서 버림.
- POW(X,Y) or POWER(X,Y) - X의 Y승
- MOD (분자, 분모) - 분자를 분모로 나눈 나머지를 구한다.(연산자 %와 같음)
- GREATEST(숫자1,숫자2,숫자3...) - 주어진 수 중 제일 큰 수 리턴.
- LEAST(숫자1,숫자2,숫자3...) - 주어진 수 중 제일 작은 수 리턴.
- INTERVAL(a,b,c,d.....) - a(숫자)의 위치 반환
2. 문자 관련 함수
- ASCII(문자) - 문자의 아스키 코드값 리턴.
- CONCAT('문자열1','문자열2','문자열3'...) - 문자열들을 이어준다.
- INSERT('문자열','시작위치','길이','새로운문자열') - 문자열의 시작위치부터 길이만큼 새로운 문자열로 대치
- REPLACE('문자열','기존문자열','바뀔문자열') - 문자열 중 기존문자열을 바뀔 문자열로 바꾼다.
- INSTR('문자열','찾는문자열') - 문자열 중 찾는 문자열의 위치값을 출력
- LEFT('문자열',개수) - 문자열 중 왼쪽에서 개수만큼을 추출.
- RIGHT('문자열',개수) - 문자열 중 오른쪽에서 개수만큼을 추출.
- MID('문자열',시작위치,개수) - 문자열 중 시작위치부터 개수만큼 출력
- SUBSTRING('문자열',시작위치,개수) - 문자열 중 시작위치부터 개수만큼 출력
- LTRIM('문자열') - 문자열 중 왼쪽의 공백을 없앤다.
- RTRIM('문자열') - 문자열 중 오른쪽의 공백을 없앤다.
- TRIM('문자열') - 양쪽 모두의 공백을 없앤다.
- LCASE('문자열') or LOWER('문자열') - 소문자로 바꾼다.
- UCASE('문자열') or UPPER('문자열') - 대문자로 바꾼다.
- REVERSE('문자열') - 문자열을 반대로 나열한다.
- LPAD('문자열',전체길이,'빈칸을 채울 문자') - 문자열의 길이를 맞추고 남은 길이만큼 왼쪽에 문자를 채워넣음
ex) SELECT LPAD('12', 5, 0) -- 00012 - RPAD('문자열',전체길이,'빈칸을 채울 문자') - 문자열의 길이를 맞추고 남은 길이만큼 오른쪽에 문자를 채워넣음
ex) SELECT RPAD('12', 5, 0) -- 12000 - GROUP_CONCAT(컬럼명 SEPARATOR '문자') - 여러행으로 나온 결과를 한줄로 만들어줌. 구분해주는 문자는 SEPARATOR 뒤에 배치해준다.
3. 논리 관련 함수
- IF(논리식,참일 때 값,거짓일 때 값) - 논리식이 참이면 참일 때 값을 출력하고 논리식이 거짓이면 거짓일 때 출력한다.
- IFNULL(값1,값2) - 값1이 NULL 이면 값2로 대치하고 그렇지 않으면 값1을 출력
4. 집계 함수
- COUNT(필드명) - NULL 값이 아닌 레코드 수를 구한다.
- SUM(필드명) - 필드명의 합계를 구한다.
- AVG(필드명) - 각각의 그룹 안에서 필드명의 평균값을 구한다.
- MAX(필드명) - 최대값을 구한다.
- MIN(필드명) - 최소값을 구한다.
5. 날짜 관련 함수
- NOW() or SYSDATE() or CURRENT_TIMESTAMP() - 현재 날짜와 시간 출력
- CURDATE() or CURRENT_DATE() -현재 날짜 출력
- CURTIME() or CURRENT_TIME() -현재 시간 출력
- DATE_ADD(날짜,INTERVAL 기준값) -날짜에서 기준값 만큼 더한다.
※ 기준값 : YEAR, MONTH, DAY, HOUR, MINUTE, SECOND
ex) SELECT DATE_ADD(NOW(), INTERVAL 1 YEAR ) -- 1년을 더함, 한가지 기준값만 추가할수있음. - DATE_SUB(날짜,INTERVAL 기준값) -날짜에서 기준값 만큼 뺸다, DATE_ADD 와 비슷함
※ 기준값 : YEAR, MONTH, DAY, HOUR, MINUTE, SECOND - YEAR(날짜) -날짜의 연도 출력.
- MONTH(날짜) -날짜의 월 출력.
- MONTHNAME(날짜) -날짜의 월을 영어로 출력.
- DAYNAME(날짜) -날짜의 요일일 영어로 출력.
- DAYOFMONTH(날짜) -날짜의 월별 일자 출력.
- DAYOFWEEK(날짜) -날짜의 주별 일자 출력(월요일(0),화요일(1)...일요일(6))
- WEEKDAY(날짜) -날짜의 주별 일자 출력(월요일(0),화요일(1)...일요일(6))
- DAYOFYEAR(날짜) -일년을 기준으로 한 날짜까지의 날 수.
- WEEK(날짜) -일년 중 몇 번쨰 주.
- FROM_DAYS(날 수) --00년 00월 00일부터 날 수 만큼 경과한 날의 날짜 출력.
- TO_DAYS(날짜) --00 년 00 월 00일 부터 날짜까지의 일자 수 출력.
- DATE_FORMAT(날짜,'형식') : 날짜를 형식에 맞게 출력
- STR_TO_DATE(날짜형식의 스트링, format ) : 스트링을 날짜로 변경/ 형식이랑 안맞으면 null 값
포맷 스트링 | 설명 |
%Y | Year, numeric, four digits |
%y | Year, numeric (two digits) |
%M | Month name (January - December) |
%m | Month, numeric (01 - 12) |
%D | Day of the month with English suffix (0th, 1st, 2nd, 3rd, ... ) |
%d | Day of the month, numeric (01 - 31) |
%j | Day of year (001-366) |
%H | Hour (00 - 23) |
%h | Hour (00 - 12) |
%i | Minutes, numeric (00 - 59) |
%s | Seconds (00-59) |
%p | AM or PM |
%r | Time, 12-hour(hh:mm:ss followd by AM or PM) |
%T | Time, 24-hour(hh:mm:ss) |
출처 : http://kwonnam.pe.kr/wiki/database/mysql/date
6. 캐스팅
- CAST(expr AS type)
type에 들어갈 자료형
1. BINARY
2. CHAR
3. DATE
4. DATETIME
5. TIME
6. DECIMAL
7. JSON (MySQL 5.7.8부터 제공됨)
8. NCHAR
9. SIGNED [INTEGER]
10. UNSIGNED [INTEGER]
'Data > Mysql' 카테고리의 다른 글
ddl 무한 대기 (0) | 2022.07.23 |
---|---|
SQL JOIN 종류 (0) | 2021.04.14 |
too many connections (url) (0) | 2021.02.02 |
Mysql 비밀번호 정책 변경하기 (0) | 2020.09.22 |
Mysql 외부접근 허용하기(url) (0) | 2020.09.22 |
댓글