//下面是trunc(dt,format)关于时间的应用: select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual; TO_CHAR(SYSDATE,'YYYY-MM-DDHH2' ------------------------------ 2011-04-21 06:41:30 //现在时刻 -- select trunc(sysdate,'year') from dual; TRUNC(SYSDATE,'YEAR') --------------------- 2011-1-1 //截取到year -- select trunc(sysdate,'q') from dual; TRUNC(SYSDATE,'Q') ------------------ 2011-4-1 //一年四个季度,这是第二个季度,从4.1日开始 -- select trunc(sysdate,'month') from dual; TRUNC(SYSDATE,'MONTH') ---------------------- 2011-4-1 //截取到month -- select trunc(sysdate,'w') from dual; TRUNC(SYSDATE,'W') ------------------ 2011-4-15 //上周倒数第二天 -- select trunc(sysdate,'ww') from dual; TRUNC(SYSDATE,'WW') ------------------- 2011-4-16 //截取到上周末 -- select trunc(sysdate,'day') from dual; TRUNC(SYSDATE,'DAY') -------------------- 2011-4-17 //截取到这周开始的那天 -- select trunc(sysdate,'iw') from dual; TRUNC(SYSDATE,'IW') ------------------- 2011-4-18 //本周第二天 -- select trunc(sysdate,'dd') from dual; TRUNC(SYSDATE,'DD') ------------------- 2011-4-21 //截取到今天 -- select trunc(sysdate,'hh24') from dual; TRUNC(SYSDATE,'HH24') --------------------- 2011-4-21 6:00:00 //截取到hour -- select trunc(sysdate,'mi') from dual; TRUNC(SYSDATE,'MI') ------------------- 2011-4-21 6:45:00 //截取到mi -- select trunc(sysdate,'ss') from dual ORA-01899: bad precision specifier //没有截取到秒的格式。 参考:http://www.techonthenet.com/oracle/functions/trunc_date.php