자바스크립트가 비활성화 되어있습니다.
자바스크립트가 활성화 되어야 콘텐츠가 깨지지 않고 보이게 됩니다.
자바스크립트를 사용할수 있도록 옵션을 변경해 주세요.
- willbsoon

본문 바로가기
Data/Mysql

Mysql 내장 함수 정리

by willbsoon 2021. 5. 12.

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]

 

 

 

참고 : yoo-hyeok.tistory.com/92

 

'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

댓글