728x90

숫자함수

TRUNCATE

TRUNCATE(X, A)

X의 소수부분 중, A 이하의 소수를 삭제한 수를 반환하는 함수

SELECT TRUNCATE(18.99999, 3);

>>18.999

ROUND

- ROUND(X)

X의 반올림한 수를 반환하는 함수

SELECT ROUND(10.5);

>>11

- ROUND(X, A)

X를 소수점 A자리 이하에서 반올림한 결과를 반환하는 함수

A 0일 경우, 소수점 아래 부분을 생략.

SELECT ROUND(10.569, 2);

>>10.57

ABS

ABS(X)

X의 절대값을 반환하는 함수

SELECT ABS(-22);

>>22

SIGN

SIGN(X)

X가 음수면 -1, 0이면 0, 양수면 1을 반환하는 함수

SELECT SIGN(-22);

>>-1

MOD

MOD(N, M)

N M으로 나눈 나머지를 반환하는 함수.(모듈라 연산)

SELECT MOD(100,30);

>>10

LOG

- LOG(X) : X를 자연 로그()로 취한 값을 반환하는 함수

SELECT LOG(2);

>>0.693147

- LOG10(X) : X를 상용로그()로 취한 값을 반환하는 함수

SELECT LOG10(2);

>>0.301030

POW or POWER

POW(X, Y) or POWER(X,Y)

을 반환하는 함수

SELECT POW(2,10);

>>1024.000000

FLOOR

FLOOR(X)

X보다 크지 않은 가장 큰 정수를 반환하는 함수.(내림)

SELECT FLOOR(10.54);

>>10

CEILING

CEILING(X)

X보다 큰 정수 중 가장 작은 정수를 반환하는 함수(올림)

SELECT CEILING(-10.54);

>>-10

PI

PI()

파이값()을 반환하는 함수

SELECT PI();

>>3.141593

SQRT

SQRT(X)

X의 제곱근을 반환하는 함수

SELECT SQRT(4);

>>2

RAND

- RAND()

0.0 ~ 1.0 의 난수를 만들어내는 함수

SELECT RAND();

>>0.78875129184569

- RAND(n)

n seed number

SELECT RAND(10);

>>0.18109053110805

LEAST

LEAST(N1, N2, ...)

인자들 중에서 가장 작은 수를 반환하는 함수

SELECT LEAST(4,345,233,1,44,32);

>>1

GREATEST

GREATEST(N1, N2, ...)

인자들 중에서 가장 큰 수를 반환하는 함수

SELECT GREATEST(4,345,233,1,44,32);

>>345

RADIANS

RADIANS(X)

X를 라디안 값으로 반환하는 함수.

(라디안 : 호도법에 의한 각도의 단위로 원의 반지름의 길이와 호의 길이가 같은 부채꼴의 각도. 1라디안은 약571744.8’‘.)

SELECT RADIANS(90);

>>1.5707963267949

삼각함수

COS(X)

라디안 값 X에 대한 코사인값을 반환하는 함수

SELECT COS(PI());

>>-1.000000

SIN(X)

라디안 값 X에 대한 사인값을 반환하는 함수

SELECT SIN(PI()+5);

0.958924

TAN(X)

라디안 값 X에 대한 탄젠트값을 반환하는 함수

SELECT TAN(PI()+5);

-3.380515

날짜함수

옵션) YEAR , MONTH, DAY, HOUR MINUTE, SECOND, DAY_MICROSECOND, HOUR_MICROSECOND, MINUTE_MICROSECOND, SECOND_MICROSECOND

NOW

NOW() or SYSDATE() or CURRENT_TIMESTAMP()

현재 날짜와 시간 출력하는 함수로,

YYYY-MM-DD HH:MM:SS 또는 YYYYMMDDHHMMSS 형식으로 반환한다.

SELECT NOW();

>> 2000-12-19 22:36:30

YEAR

YEAR(date)

date의 해당 년도를 반환하는 함수로 값은 1000에서 9999사이.

SELECT YEAR('2000-12-19');

>>2000

MONTH

MONTH(date)

해당 날짜가 몇 월인지 알려주는 함수

SELECT MONTH('2000-12-19');

>>12

HOUR

HOUR(time)

시간을 반환하는 함수로, 값은 0~23

SELECT HOUR('22:12:44');

22

MINUTE

MINUTE(time)

분을 리턴하는 함수로 값은 0~59.

SELECT MINUTE('22:12:44');

>>12

SECOND

SECOND(time)

초를 반환하는 함수로, 값은 0~59.

SELECT SECOND('22:12:44');

>>44

DAYNAME

DAYNAME(date)

해당 날짜의 영어식 요일 이름을 반환하는 함수

SELECT DAYNAME('2000-12-19');

>>Tuesday

MONTHNAME

MONTHNAME(date)

해당 날짜의 영어식 월 이름을 반환하는 함수

SELECT MONTHNAME('2000-12-19');

December

DATE_ADD

DATE_ADD(date, interval expr type)

date에 정해진 시간을 더한 값을 반환하는 함수.

SELECT DATE_ADD("1997-12-31 23:59:59", interval "1:1", minute_second)

>>1998-01-01 00:01:00

DATE_SUB

DATE_SUB(date, interval expr type)

date에서 expr를 가감하는데, type으로 나타나도록

SELECT DATE_SUB("1998-01-01 00:00:00", interval "1:1:1", day_second)

>>1997-12-30 22:58:59

DAYOFWEEK

DAYOFWEEK(date)

해당날짜(date)가 몇 번째 요일인지 숫자로 반환하는 함수.

1, 2, 3, 4, 5, 6, 7

SELECT DAYOFWEEK('2011-03-30');

>>4

WEEKDAY

WEEKDAY(date)

날짜를 한 주의 몇 번째 요일인지를 나타내는 숫자를 반환하는 함수

0, 1, 2, 3, 4, 5, 6

SELECT WEEKDAY('2000-12-19 22:00:12');

>>1

DAYOFMONTH

DAYOFMONTH(date)

그 달의 몇 번째 날인지를 나타내는 함수

SELECT DAYOFMONTH('2000-03-07');

>>7

DAYOFYEAR

DAYOFYEAR(date)

한 해의 몇 번째 날인지 나타내는 함수

SELECT DAYOFYEAR('2000-12-19');

>>354

QUARTER

QUARTER(date)

분기를 반환하는 함수. 결과값은 1~4.

SELECT QUARTER('2000-12-19');

>>4

WEEK

- WEEK(date)

date가 몇 번째 주일인지 반환하는 함수로 값은 0 ~ 52사이의 값이다.

SELECT WEEK('2000-12-19');

>>51

- WEEK(date, first)

date로 한 주의 시작일을 정해줄 수 있는 함수.

SELECT WEEK('1998-02-20',0);

>>7

TO_DAYS

TO_DAYS(date)

date 0000년 부터의 일수로 바꿔주는 함수

SELECT TO_DAYS('2000-12-19');

>>730838

PERIOD_ADD

PERIOD_ADD(period,N)

YYMM 또는 YYYYMM 형식으로 주어진 달(period) N 개월을 더해 반환하는 함수로, 반환 값의 형식은 YYYYMM이다.

SELECT PERIOD_ADD(200012,2);

>>200102

Period_diff

Period_diff(p1,p2)

YYMM또는 YYYYMM형식으로 주어진 두 기간 사이의 개월을 구한다.

SELECT PERIOD_DIFF(9802,199703)

>>11

Date_format

Select Date_format(hiredate,’%w %a %d)

From emp;

%w -> 숫자로 일요일 0

%a -> 요일의 세글자만

%d -> 일자

논리함수

IF

IF(logic, trueValue, falseValue)

논리식(logic)이 참이면 trueValue , 거짓이면 falseValue를 출력하는 함수

SELECT last_name, first_name, death

FROM president

ORDER BY if(death is null,0,1), death;

기타함수

USER

USER(), SYSTEM_USER(), SESSION_USER()

현재 접속중인 MYSQL 사용자 이름을 반환하는 함수

SELECT USER();

yun@localhost

PASSWORD

PASSWORD(str)

일반 문자열(str)을 암호화하는 함수로, 이 함수는 MYSQL 서버가 사용자 권한을 설정하는 테이블인 user 테이블에 사용자의 암호를 입력할 때 사용된다. PASSWORD() 함수를 통한 암호화는 단방향적이므로 한번 PASSWORD() 함수를 통해 암호화된 문자열을 다시 해독하는 함수는 존재하지 않는다. 따라서 주어진 사용자의 암호를 암호화 한 후 기존의 암호화된 문자열과 비교하는 방법을 통해 비교가 이루어진다.

SELECT PASSWORD('ATOM');

>>37a2353b58d088dc

728x90

'DB' 카테고리의 다른 글

ORDER BY item must be the number of a SELECT-list expression  (0) 2012.07.29
셀렉트하면서 인서트  (0) 2012.07.29
Mysql 문자 함수  (0) 2012.07.29
MYSQL ROWNUM  (0) 2012.07.29
클러스터 인덱스 & Non클러스터 인덱스  (0) 2012.07.29

+ Recent posts