こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

INTERVAL YAER TO MONTH型について教えてください。

INTERVAL YAER TO MONTH型がよくわかりません。

どんな時に使われるのでしょうか。
何年と何ヶ月(0から11)という形でデータを参照、格納したいときに
便利ということでしょうか?

投稿日時 - 2008-05-18 15:59:07

QNo.4031597

すぐに回答ほしいです

質問者が選んだベストアンサー

 INTERVAL YEAR TO MONTH と、INTERVAL DAY TO CECONDをあわせて、期間型といいます。このふたつで、任意の期間が「何年何月何日何時何分何秒」で表示できます。
 さて、期間型の使い道ですが、まずは、文字通り何ヶ月間とか何秒間とかいうデータを保存するのに使うというのが素直ですか。

 もうひとつの重要な使い道は演算です。特に、期間を表すデータがちゃんと期間型としてテーブルに構成されていると力を発揮します。
 考えてみてください。
 あるDATE型のフィールド「A」があり、そこからの経過時間を表すフィールド「B」があるとします。とりあえず、「B」の単位は、「●時間●分間」としましょうか。
 さて、Bが経過した後の日付時刻は?と聞かれたとき、どう計算しますか?というのが問題です。もし、Bのフィールドが、何時間と何分を表すNUMBER型の二つの数値で登録されていたり、「●●:●●」という文字列で表記されていたりしたら、どんな処理が必要か想像してみてください。
 日付時刻の計算というのは意外と面倒だというのがわかると思います。
 INTERVAL ** TO **型であれば、何の気遣いもいりません。そもそもそのための型です。素直に足し算すれば終わりです。引き算も素直にできます。(ちなみに、先の質問の数値や文字列で保存されていた場合の一番簡明な処理方法は、INTERVAL ** TO **型に変換して足し算することかと思います(苦笑))

 こんな感じでイメージはつかめますでしょうか?

投稿日時 - 2008-05-19 22:16:19

お礼

ありがとうございました。
イメージがわきました。

投稿日時 - 2008-05-21 01:42:23

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問