日付抽出関数

これらの関数は、タイムスタンプから対応する年/月/日/時/分/秒/ミリ秒/マイクロ秒/ナノ秒を返します。timestampは、関数の引数として指定する必要があります。

構文:

INTEGER year(<timestamp>)

INTEGER month(<timestamp>)

INTEGER day(<timestamp>)

INTEGER hour(<timestamp>)

INTEGER minute(<timestamp>)

INTEGER second(<timestamp>)

INTEGER millisecond(<timestamp>)

INTEGER microsecond(<timestamp>)

INTEGER nanosecond(<timestamp>)
セマンティクス:
  • timestamp: これらの関数は、入力引数としてタイムスタンプを必要とします。
  • 戻り値: INTEGER

    表12-3 タイムスタンプ日付抽出関数

    関数 戻り値
    year 指定されたタイムスタンプの年を返します。戻り値の範囲は、-6383から9999です。
    month 指定されたタイムスタンプの月を1から12の範囲で返します。
    day タイムスタンプの月の日付を1から31の範囲で返します。
    hour タイムスタンプの時間を0から23の範囲で返します。
    minute タイムスタンプの分を0から59の範囲で返します。
    second タイムスタンプの秒を0から59の範囲で返します。
    millisecond タイムスタンプの小数秒(ミリ秒)を0から999の範囲で返します。
    microsecond タイムスタンプの小数秒(マイクロ秒)を0から999999の範囲で返します。
    nanosecond タイムスタンプの小数秒(ナノ秒)を0から999999999の範囲で返します。

ノート:

引数がNULLまたは空の場合、結果もNULLまたは空になります。

例12-24 航空会社の手荷物追跡データからの乗客の統合された移動詳細の取得

航空会社アプリケーションでは、乗客が今度の旅行詳細の簡単な概要がわかると便利です。その他の時間関数を使用して、BaggageInfo表から乗客の統合された旅行詳細を取得できます。
SELECT DISTINCT
$s.fullName,
$s.bagInfo[].flightLegs[].flightNo AS flightnumbers,
$s.bagInfo[].flightLegs[].fltRouteSrc AS From,
concat ($t1,":", $t2,":", $t3) AS Traveldate
FROM baggageinfo $s, $s.bagInfo[].flightLegs[].flightDate AS $bagInfo,
day(CAST($bagInfo AS Timestamp(0))) $t1,
month(CAST($bagInfo AS Timestamp(0))) $t2,
year(CAST($bagInfo AS Timestamp(0))) $t3

説明:

時間関数を使用して、旅行の日付、月および年を取得できます。concat関数は、取得した旅行レコードを連結して、アプリケーションに必要な形式で表示するために使用されます。最初にCAST式を使用してflightDatesをTIMESTAMPに変換し、タイムスタンプから日、月および年の詳細をフェッチします。

出力:
{"fullName":"Adam Phillips","flightnumbers":["BM604","BM667"],"From":["MIA","LAX"],"Traveldate":"1:2:2019"}

{"fullName":"Adelaide Willard","flightnumbers":["BM79","BM907"],"From":["GRU","ORD"],"Traveldate":"15:2:2019"}

問合せによって、乗客のクイック参照として機能するフライト詳細が返されます。