이 글은 주로 사용되는 Oracle 함수 Trunc를 소개하고 Trunc 함수가 필요한 친구들이 참고하면 도움이 될 것입니다.
추천 관련 mysql 비디오 튜토리얼: "mysql tutorial"
1.Trunc(date)
trunc는 지정된 요소로 날짜 유형 데이터를 가로챕니다
구문: trunc(date, [format] )
date – 날짜 형식의 값
format – 'mm', 'yyyy' 등과 같은 날짜 형식. 지정된 날짜 형식에서 날짜를 가로챕니다.
예:
trunc(sysdate,'yyyy')=‘01-01月-17'(sysdate='21-11月-17'); --返回今年的第一天 trunc(sysdate,'mm')=‘01-11月-17'; --返回本月第一天 trunc(sysdate,'d')=‘19-11月-17'; --(今天星期二,一周从周日开始计算)返回本周第一天
2 Trunc(number ,[number1])
trunc(number)는 첫 번째 숫자가 반올림되지 않는다는 점을 제외하면 round( )와 유사합니다.
예:
round(89.125,2)=89.13 trunc(89.125,2)=89.12 trunc(89.125,-1)=80
number1의 기본값은 0입니다.
다음은 Oracle trunc() 함수의 사용법을 소개합니다
1.TRUNC(날짜용)
TRUNC 함수가 지정된 요소에 대해 잘라낸 날짜 값입니다.
구체적인 구문 형식은 다음과 같습니다.
TRUNC(date[,fmt])
그 중:
날짜 값 날짜
fmt 날짜 형식, 날짜는 지정된 요소 형식으로 잘립니다. 무시하고 가장 가까운 날짜부터 자릅니다
이 함수의 사용법은 다음과 같습니다.
TRUNC(TO_DATE('24-Nov-1999 08:00 pm'), 'dd-mon-yyyy hh:mi am')
='24-Nov-1999 12:00:00 am'
TRUNC(TO_DATE('24-Nov-1999 08:37 pm','dd-mon-yyyy hh:mi am'),'hh' ) ='24-Nov-1999 08:00:00 am'
trunc(sysdate,'yyyy') --연도의 첫 번째 날을 반환합니다.
trunc(sysdate,'mm') --월의 첫째 날을 반환합니다.
trunc(sysdate,'d') --현재 주의 첫째 날을 반환합니다.
trunc(sysdate,'dd')--현재 연도, 월, 일을 반환합니다.
2.TRUNC(숫자용)
TRUNC 함수의 작동 메커니즘은 ROUND 함수와 매우 유사합니다. 단, 이 함수는 지정하지 않습니다. 소수점 앞이나 뒤의 부분은 그에 따라 반올림되어 선택되며 모두 잘립니다.
구체적인 구문 형식은 다음과 같습니다.
TRUNC (숫자[,십진수])
여기서:
number는 가로챌 값입니다.
decimals는 유지해야 하는 소수점 이하 자릿수를 지정합니다. 선택 사항입니다. 무시하고 모든 소수 부분을 자릅니다.
다음은 이 함수의 사용법입니다.
TRUNC (89.985, 2) = 89.98
TRUNC (89.985) = 89
TRUNC (89.985, -1) = 80
참고: 두 번째 매개변수는 음수일 수 있습니다. 즉, 소수점 왼쪽의 지정된 자릿수 이후 부분은 잘립니다. 즉, 0으로 기록됩니다. 예를 들어, 매개변수가 1이면 10분의 1로 반올림됩니다.
--오라클의 trunc() 함수 사용법
/**************日期********************/ 1.select trunc(sysdate) from dual --2011-3-18 今天的日期为2011-3-18 2.select trunc(sysdate, 'mm') from dual --2011-3-1 返回当月第一天. 3.select trunc(sysdate,'yy') from dual --2011-1-1 返回当年第一天 4.select trunc(sysdate,'dd') from dual --2011-3-18 返回当前年月日 5.select trunc(sysdate,'yyyy') from dual --2011-1-1 返回当年第一天 6.select trunc(sysdate,'d') from dual --2011-3-13 (星期天)返回当前星期的第一天 7.select trunc(sysdate, 'hh') from dual --2011-3-18 14:00:00 当前时间为14:41 8.select trunc(sysdate, 'mi') from dual --2011-3-18 14:41:00 TRUNC()函数没有秒的精确 /***************数字********************/ /* TRUNC(number,num_digits) Number 需要截尾取整的数字。 Num_digits 用于指定取整精度的数字。Num_digits 的默认值为 0。 TRUNC()函数截取时不进行四舍五入 */ 9.select trunc(123.458) from dual --123 10.select trunc(123.458,0) from dual --123 11.select trunc(123.458,1) from dual --123.4 12.select trunc(123.458,-1) from dual --120 13.select trunc(123.458,-4) from dual --0 14.select trunc(123.458,4) from dual --123.458 15.select trunc(123) from dual --123 16.select trunc(123,1) from dual --123 17.select trunc(123,-1) from dual --120
오라클에서 흔히 사용하는 Trunc 함수는 이미 다들 알고 계시리라 믿습니다. 직접 사용해 보세요.
관련 추천 :
Oracle 사용자 정의 분할 함수 예제에 대한 자세한 설명
Oracle 마이너스 사용법에 대한 자세한 설명 및 응용 예제
위 내용은 Oracle 공통 기능 Trunc에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!