oracle學習筆記之二:資料類型之DATETIME 收藏

來源:互聯網
上載者:User

        在1z0-007題庫中有一道關於DATETIME資料類型的題目:
        Which three are DATETIME data types that can be used when specifying column definitions? (Choose three)

        A.  TIMESTAMP
        B.  INTERVAL MONTH TO DAY
        C.  INTERVAL DAY TO SECOND
        D.  INTERVAL YEAR TO MONTH
        E.  TIMESTAMP WITH DATABASE TIMEZONE

這道題,因為要選三個答案,因此應該就是A, C, D。 不過在Oracle9i Reference中,好像並沒有把INTERVAL歸到datetime datatypes 裡面, 原文是如此描述的:
        The datetime datatypes are DATE, TIMESTAMP, TIMESTAMP WITH TIME ZONE and TIMESTAMP WITH LOCAL TIME ZONE. Values of datetime datatypes are sometimes called "datetimes". The interval datatypes are INTERVAL YEAR TO MONTH and INTERVAL DAY TO SECOND. Values of interval datatypes are sometimes called intervals.

因此如果上面的題目中沒有指定選擇三個,那很有可能就做錯了。

DATE資料類型在工作中用的最多,一般就是包含年月日時分秒。不過以前從來沒用過日期常量,格式為DATE'2009-07-28', 不能包含時間部分,且必須是'YYYY-MM-DD'格式,如果要包含時間部分,只能用to_date來轉化了。

timestamp和interval這兩個資料類型在工作中用的很少。
timestamp和date差不多,只是後面多了秒以下的部分,可以用0-9位的小數來表示其精度(fractional_seconds_precision)。不過還有個區別是timestamp後面可以加上WITH TIME ZONE 或者 WITH LOCAL TIME ZONE。其中WITH TIME ZONE表示該資料類型中還包含了和UTC之間的時區位移資訊;而WITH LOCAL TIME ZONE的資料類型中,儲存時都是標準化成資料庫的時區,當使用者擷取資料時,oracle會根據使用者本地session中的時區資訊來計算和UTC的時區位移。

interval印象裡在8i沒見過,可能是借鑒informix裡面的interval資料類型,不過oracle9i只有兩種interval類型:interval year to month和interval day to second,比informix裡面簡單多了,其中year後可以加一個精度控制,比如 interval year(1) to month,那麼年部分最多就是1位元,該值預設為2;day部分也一樣,如inetrval day(3) to second, 表示日部分最多3位元,該值預設也為2;second後面還可以加上秒以下的時間精度,如inetrval day(3) to second(3),表示秒以下部分用3位小數表示。 注意這個second後面的數字容易理解為是秒的精度,實際上是秒以下部分的精度。
interval的常量表示類似如下方式:
interval '3-1' year to month, 表示3年零1個月, 也相當於interval '37' month,即37個月
interval '2 1:0:0' day to second,表示2天1小時。
interval '999 00:01:00.123' day(3) to second (3)

interval資料類型可以和date,timstamp類型進行加減運算,兩個相同的interval類型也可以加減運算,但是interval year to month和interval day to second不能進行運算。

本文來自CSDN部落格,轉載請標明出處:http://blog.csdn.net/mosaic/archive/2009/07/28/4388851.aspx

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.