SQL/SQL 기본
SQL 기본(10): 날짜, 집계, 수학 함수
민서타
2023. 10. 1. 00:27
1. GENDATE, SYSDATETIME, DATEADD, DATEDIFF, DATEPART, DATENAME
GETDATE() 현재 접속중인 데이터 베이스 서버의 시간을 소수점 3자리 까지 시간을 반환 SYSDATETIME() 현재 접속중인 서버의 시간을 소수점 7자리까지 시간을 반환 UTC: 세계 협정 시간 / GETUTCADATE: 현재 접속중인 서버의 UTC 시간을 소수점 3자리 / SYSUTCDATETIME: 소수점7자리~ DATEADD( datepart, num, date) # 날짜를 더하거나 빼기, year, quarter, day 등 날짜형식 사용 가능 DATEDIFF (datepart, startdate, enddate) # 두 날짜의 차이, 차이가 큰 숫자일 때에는 DATEDIFF_BIG을 사용 DATEPART (datepart, date) # 현재 요일의 숫자를 반환 DATENAME (datepart, date) # 현재 요일의 이름 반환 |
2. COUNT, SUM, ROLLUP, CUBE, STEDV, STEDVP
COUNT([[ALL OR DISTINCT[ exp]), COUNT_BIG #그룹의 항목 수 반환(BIG은 데이터가 21억개 초과할 시) SUM ([[ALL OR DISTINCT[ exp]) #합계 함수, bigint, decimal, money, float 외 int반환, CAST를 통한 bigint변환으로 오류극복 MIN ([[ALL OR DISTINCT[ exp]) #최솟값, OVER절 뒤에 사용 가능 OVER ([partion_by_clause]) GROUP BY ROLLUP(col1, col2, ...) #각각의 부분합, 총계를 구해주는 함수 GROUP BY CUBE(col1, col2, ...) #가능한 모든 열 조합에 대한 그룹 생성, 집계 그룹 결과 STEDV, STEDVP() #전체집단에 대한 표준편차 / 모집단에 대한 표준편차, 집계쿼리화 하위쿼리 사용불가, NULL값 무시 |
3. ABS, SIGN, CEILING, FLOOR, ROUND, LOG, EXP, POWER, SQUARE, SQRT, RAND, ETC...
ABS() #절대값 반환, 자료형 범위가 넘으면 오버플로우 발생 SIGN() #양수는 1, 음수는 -1, 0은 0으로 반환 CEILING() #지정한 숫자보다 크거나 같은 최소 정수를 반환 FLOOR() #지정한 숫자보다 작거나 같은 최대 정수를 반환 ROUND(numeric_exp, length[, func]) #전체 자릿수로 반올림한 숫자값을 반환 func: 양수는 소수부, 음수는 정수부 반올림 LOG(float_exp, [, base]) #로그값 반환, base: 밑, 기본값은 e EXP(float_exp) # e의 n 제곱값 POWER(N, n), SQUARE(N) # 거듭제곱, 제곱값 반환 SQRT() #입력값의 제곱근 RAND() #0~1 사이의 베타적 의사 난수 실수값을 반환 |
반응형