ÒÔÉÏÎª×ªÔØ,¶àÊý²¢Î´ÑéÖ¤.
ÆäÖÐ,select trunc(sysdate,'dd') from dual,µÃµ½µÄÊÇ: 2009-3-23 ÉÏÎç12:00:00 ,ÓëÏÂÎIJ¢²»Ò»Ñù!
oracle trunc()º¯ÊýµÄÓ÷¨
1.TRUNC(for dates)
TRUNCº¯ÊýΪָ¶¨ÔªËضø½ØÈ¥µÄÈÕÆÚÖµ¡£
Æä¾ßÌåµÄÓï·¨¸ñʽÈçÏ£º
TRUNC£¨date[,fmt]£©
ÆäÖУº
date Ò»¸öÈÕÆÚÖµ
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’
round (date,''format'')δָ¶¨formatʱ£¬Èç¹ûÈÕÆÚÖеÄʱ¼äÔÚÖÐÎç֮ǰ£¬Ôò½«ÈÕÆÚÖеÄʱ¼ä½Ø¶ÏΪ12 A.M.(ÎçÒ¹,Ò»ÌìµÄ¿ªÊ¼),·ñÔò½øµ½µÚ¶þÌì¡£
TRUNC(date,''format'')δָ¶¨formatʱ£¬½«ÈÕÆÚ½ØÎª12 A.M.£¬²»¿¼ÂÇÊÇ·ñÔÚÖÐÎç֮ǰµÄÌõ¼þ¡£
2.TRUNC(for number)
TRUNCº¯Êý·µ»Ø´¦ÀíºóµÄÊýÖµ£¬Æä¹¤×÷»úÖÆÓëROUNDº¯Êý¼«ÎªÀàËÆ£¬Ö»ÊǸú¯Êý²»¶ÔÖ¸¶¨Ð¡Êýǰ»òºóµÄ²¿·Ö×öÏàÓ¦ÉáÈëÑ¡Ôñ´¦Àí£¬¶øÍ³Í³½ØÈ¥¡£
Æä¾ßÌåµÄÓï·¨¸ñʽÈçÏÂ
TRUNC£¨number[,decimals]£©
ÆäÖУº
number ´ý×ö½ØÈ¡´¦ÀíµÄÊýÖµ
decimals Ö¸Ã÷Ðè±£ÁôСÊýµãºóÃæµÄλÊý¡£¿ÉÑ¡ÏºöÂÔËüÔò½ØÈ¥ËùÓеÄСÊý²¿·Ö
ÏÂÃæÊǸú¯ÊýµÄʹÓÃÇé¿ö£º
TRUNC£¨89.985£¬2£©=89.98
TRUNC£¨89.985£©=89
TRUNC£¨89.985£¬-1£©=80
×¢Ò⣺µÚ¶þ¸ö²ÎÊý¿ÉÒÔΪ¸ºÊý£¬±íʾΪСÊýµã×ó±ßÖ¸¶¨Î»ÊýºóÃæµÄ²¿·Ö½ØÈ¥£¬¼´¾ùÒÔ0¼Ç¡£
{
formatΪdayʱ,Ö»¾«È·µ½Ìì,¶ø²»¹Ü¼¸Ä꼸ÔÂÖ»ÒªÊÇ·ûºÏµÄday¾Í¿ÉÒÔÁË,ÒªÏëÈ·¶¨Ò»ÄêÖеÄijÔµÄijһÌì¾ÍÒªÓÃtrunc(date,''dd'').
ͨË×µÄ˵°É,formatΪÄêʱ,¾«È·µ½-----Äê
ΪÔÂʱ,¾«È·µ½------Äê,ÔÂ(²»¹ÜÄÄÄê,Ö»ÒªÊÇÏàͬµÄÔºÍÄÄÌì)
ΪÈÕʱ,¾«È·µ½------Äê,ÔÂ,ÈÕ(²»¹ÜÄÄÄêµÄÄÄÔÂ,Ö»¹ØÐÄÊÇÄÄÌì)
}
///////////////////////////////////////////////////////////////////////////////
ʵÀý:
¶ÔÊý×Ö£¬ÈÕÆÚ½øÐеÄ
SQL> select trunc(sysdate) from dual;
TRUNC(SYSD
----------
07-1ÔÂ -0
¸Õ¸ÕÔÚinthirtiesÀÏ´óµÄ²©¿ÍÀï¿´µ½ÕâÆªÎÄÕ£¬Ð´µÄ²»´í£¬ÕýºÃ×Ô¼º×î½üÔÚѧϰPL/SQL£¬×ª¹ýÀ´Ñ§Ï°Ñ§Ï°¡£
==================================================================================
bulk collectÊÇ¿ÉÒÔ¿´×öÊÇÒ»ÖÖÅú»ñÈ¡µÄ·½Ê½£¬ÔÚÎÒÃǵÄplsqlµÄ´úÂë¶ÎÀï¾³£×÷ΪintoµÄÀ©Õ¹À´Ê¹Ó᣶ÔÓÚselect id into v from ... ......