日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

函數ROUND根據指定的模板模式返回一個經過取整的日期類型值。

如果沒有指定模板模式,且參數類型為date或者timstamp等日期類型,那么就將日期取整到最近的一天;如果參數類型為interval類型,那么就把時間月份數和天數取出,按照每個月30天計算,然后相加返回天數。

下表展示了函數ROUND所使用的模板模式。

表 1. ROUND函數日期模板

模式

說明

CC, SCC

返回CC01年1月1日,如果CC后的兩位數字小于等于50,則CC是給定年份的前兩位數字;如果CC后的兩位數字大于50,則CC是給定年份的兩位數字加1。

SYYY, YYYY, YEAR, SYEAR, YYY, YY, Y

返回YYYY年1月1日,6月30日及以前返回指定年份的1月1日;7月1日以后返回次年的1月1日。

IYYY, IYY, IY, I

返回ISO年份的開始日期,如果日期是6月30號及以前,則返回當前ISO年份的開始日期;如果日期是7月1號以后,則返回下個ISO年份的開始日期。

說明

ISO年份是以7天為跨度從第一個星期一開始,從星期一到星期日,包含新的一年里至少4天的日期。因此,可以從前一年的12月開始一個ISO年份。

Q

返回季度的第一天。如果日期為該季度第二個月的15號及以前,則返回當前季度的第一天;如果日期為該季度的第二個月的16號以后,則返回下個季度的第一天。

MONTH, MON, MM, RM

返回月份的第一天。如果日期為15號及以前,則返回當前月的第一天;如果日期為16號以后,則返回次月的第一天。

WW

返回與當前日期最近的星期。

IW

把日期取整與之到最近的以ISO格式表示的星期數。

W

日期值取整到與之最接近的一周,其中周的開始日期被認為是和每月第一天相同。

DDD, DD, J

日期值取整到與之最接近的一天。

DAY, DY, D

日期值取整到與之最接近星期天。

HH, HH12, HH24

日期值取整到與之最接近的小時值。

MI

日期值取整到與之最接近的分鐘值。

下面是函數ROUND的使用示例。

下面的示例將日期取整到與之最接近的世紀的開始年份。

SELECT TO_CHAR(ROUND(TO_DATE('1950','YYYY'),'CC'),'DD-MON-YYYY') "Century" FROM DUAL;

   Century
-------------
 01-JAN-1901
(1 row)

SELECT TO_CHAR(ROUND(TO_DATE('1951','YYYY'),'CC'),'DD-MON-YYYY') "Century" FROM DUAL;

   Century
-------------
 01-JAN-2001
(1 row)    

下面的示例將日期取整到與之最近年份的開始日期。

SELECT TO_CHAR(ROUND(TO_DATE('30-JUN-1999','DD-MON-YYYY'),'Y'),'DD-MON-YYYY') "Year" FROM DUAL;

    Year
-------------
 01-JAN-1999
(1 row)

SELECT TO_CHAR(ROUND(TO_DATE('01-JUL-1999','DD-MON-YYYY'),'Y'),'DD-MON-YYYY') "Year" FROM DUAL;

    Year
-------------
 01-JAN-2000
(1 row)    

下面的示例將日期取整到與之最接近ISO年份的開始日期。第一個示例把日期取整為2004年,對于2004年的ISO年份來說,實際上是在2003年12月29號開始。第二個示例把日期取整到2005年。對于2005年的ISO年份來說,實際上是在2005年的1月3號開始。

說明

ISO年份是以7天為跨度從第一個星期一開始,從星期一到星期日,包含新的一年里至少4天的日期。因此,可以從前一年的12月開始一個ISO年份。

SELECT TO_CHAR(ROUND(TO_DATE('30-JUN-2004','DD-MON-YYYY'),'IYYY'),'DD-MON-YYYY') "ISO Year" FROM DUAL;

  ISO Year
-------------
 29-DEC-2003
(1 row)

SELECT TO_CHAR(ROUND(TO_DATE('01-JUL-2004','DD-MON-YYYY'),'IYYY'),'DD-MON-YYYY') "ISO Year" FROM DUAL;

  ISO Year
-------------
 03-JAN-2005
(1 row)    

下面的示例把日期取整到與之最接近的季度。

SELECT ROUND(TO_DATE('15-FEB-07','DD-MON-YY'),'Q') "Quarter" FROM DUAL;

      Quarter
--------------------
 01-JAN-07 00:00:00
(1 row)

SELECT ROUND(TO_DATE('16-FEB-07','DD-MON-YY'),'Q') "Quarter" FROM DUAL;

      Quarter
--------------------
 01-APR-07 00:00:00
(1 row)    

下面的示例將日期取整與之到最近的月份。

SELECT ROUND(TO_DATE('15-DEC-07','DD-MON-YY'),'MONTH') "Month" FROM DUAL;

       Month
--------------------
 01-DEC-07 00:00:00
(1 row)

SELECT ROUND(TO_DATE('16-DEC-07','DD-MON-YY'),'MONTH') "Month" FROM DUAL;

       Month
--------------------
 01-JAN-08 00:00:00
(1 row)

下面的示例將日期取整與之最接近的星期。所以在第一個示例中,與2007年1月18日最接近的星期一是2007年1月15日。在第二個示例中,與2007年1月19日最接近的星期一是2007年1月22日。

SELECT ROUND(TO_DATE('18-JAN-07','DD-MON-YY'),'WW') "Week" FROM DUAL;

        Week
--------------------
 15-JAN-07 00:00:00
(1 row)

SELECT ROUND(TO_DATE('19-JAN-07','DD-MON-YY'),'WW') "Week" FROM DUAL;

        Week
--------------------
 22-JAN-07 00:00:00
(1 row)    

下面的示例把日期取整與之到最近的以ISO格式表示的星期數。以ISO格式表示的周數從星期一開始,在第一個示例中,與日期2004年1月1日是最接近的星期一是2003年12月29日。在第二個示例中,與2004年1月2日最接近的星期一是2004年1月5日。

SELECT ROUND(TO_DATE('01-JAN-04','DD-MON-YY'),'IW') "ISO Week" FROM DUAL;

      ISO Week
--------------------
 29-DEC-03 00:00:00
(1 row)

SELECT ROUND(TO_DATE('02-JAN-04','DD-MON-YY'),'IW') "ISO Week" FROM DUAL;

      ISO Week
--------------------
 05-JAN-04 00:00:00
(1 row)        

下面的示例把日期值取整到與之最接近的一周,其中周的開始日期被認為是和每月第一天相同。

SELECT ROUND(TO_DATE('05-MAR-07','DD-MON-YY'),'W') "Week" FROM DUAL;

        Week
--------------------
 08-MAR-07 00:00:00
(1 row)

SELECT ROUND(TO_DATE('04-MAR-07','DD-MON-YY'),'W') "Week" FROM DUAL;

        Week
--------------------
 01-MAR-07 00:00:00
(1 row)    

下面的示例把日期值取整到與之最接近的日期。

SELECT ROUND(TO_DATE('04-AUG-07 11:59:59 AM','DD-MON-YY HH:MI:SS AM'),'J') "Day" FROM DUAL;

        Day
--------------------
 04-AUG-07 00:00:00
(1 row)

SELECT ROUND(TO_DATE('04-AUG-07 12:00:00 PM','DD-MON-YY HH:MI:SS AM'),'J') "Day" FROM DUAL;

        Day
--------------------
 05-AUG-07 00:00:00
(1 row)

下面的示例把日期值取整到與之最接近,周日期為星期天的日期。

SELECT ROUND(TO_DATE('08-AUG-07','DD-MON-YY'),'DAY') "Day of Week" FROM DUAL;

    Day of Week
--------------------
 05-AUG-07 00:00:00
(1 row)

SELECT ROUND(TO_DATE('09-AUG-07','DD-MON-YY'),'DAY') "Day of Week" FROM DUAL;

    Day of Week
--------------------
 12-AUG-07 00:00:00
(1 row)

下面的示例把日期值取整到與之最接近的小時值。

SELECT TO_CHAR(ROUND(TO_DATE('09-AUG-07 08:29','DD-MON-YY HH:MI'),'HH'),'DD-MON-YY HH24:MI:SS') "Hour" FROM DUAL;

        Hour
--------------------
 09-AUG-07 08:00:00
(1 row)

SELECT TO_CHAR(ROUND(TO_DATE('09-AUG-07 08:30','DD-MON-YY HH:MI'),'HH'),'DD-MON-YY HH24:MI:SS') "Hour" FROM DUAL;

        Hour
--------------------
 09-AUG-07 09:00:00
(1 row)

下面的示例把日期值取整到與之最接近的分鐘值。

SELECT TO_CHAR(ROUND(TO_DATE('09-AUG-07 08:30:29','DD-MON-YY HH:MI:SS'),'MI'),'DD-MON-YY HH24:MI:SS') "Minute" FROM DUAL;

       Minute
--------------------
 09-AUG-07 08:30:00
(1 row)

SELECT TO_CHAR(ROUND(TO_DATE('09-AUG-07 08:30:30','DD-MON-YY HH:MI:SS'),'MI'),'DD-MON-YY HH24:MI:SS') "Minute" FROM DUAL;

       Minute
--------------------
 09-AUG-07 08:31:00
(1 row)

下面的示例將時間間隔類型取整。

SELECT ROUND(TIMESTAMP '2020-10-10 10:22:22' - TIMESTAMP '2020-10-05 12:22:22');
 round 
-------
     4
(1 row)

SELECT ROUND(INTERVAL '1 year 13 months 3 days');
 round 
-------
   753
(1 row)