|
この章では、WebLogic Workshop のマッパー機能で使用できる XQuery 日付および時刻演算子について説明します。マッパー機能を使用してクエリを生成し、クエリを編集して、提供されている XQuery 演算子への呼び出しを追加します。詳細については、クエリ内での関数または演算子の呼び出しを参照してください。
マッパー機能で使用できる XQuery 関数および演算子以外にも、数多くの追加の関数および演算子が用意されています。マッパー機能のソース ビューを使用すると、これらの関数および演算子の呼び出しを手動でクエリに追加できます。追加の関数と演算子のリストについては、次の URL にある W3C Web サイトで、XQuery 1.0 and XPath 2.0 Functions and Operators - W3C Working Draft 16 August 2002 を参照してください。
http://www.w3.org/TR/2002/WD-xquery-operators-20020816
この節では、マッパー機能で使用できる日付および時刻演算子のリストを示します。
$date-var1 と $date-var2. の時間差を計算します。$date-var1 の値から $date-var2 の値を減算します。
$date-var2 の値が $date-var1 の値よりも未来を表す場合は、戻り値は負の期間になります。
$date-var1 または $date-var2 の値が空のシーケンスである場合は、次のエラーが表示されます。
XQuery を実行中にエラーが発生しました : このメソッドに XQuery または XSLT をロードしている際にエラーが発生しました。
Type error in function subtract-dates invocation: expected type
[date@http://www.w3.org/2001/XMLSchema],
op:subtract-dates(xs:
date $date-var1, xs: date $date-var2) —>xf:
dayTimeDuration
$date-var1 と$date-var2 の時間差を
dayTimeDuration 値として返します。
次のクエリ例では、$date-var2 が $date-var1 よりも過去を表すため、正の日数が返されます。
<num_days>{xf:get-days-from-dayTimeDuration(op:subtract-dates(xs:date("2002-08-30"),
xs:date("2001-08-30")))}</num_days>
次のクエリ例では、$date-var2 が $date-var1 よりも未来を表すため、負の日数が返されます。
<num_days>{xf:get-days-from-dayTimeDuration(op:subtract-dates(xs:date("2001-08-30"),
xs:date("2002-08-30")))}</num_days>
W3C の
subtract-dates 演算子の説明。
W3C の
date データ型の説明。
W3C の
dayTimeDuration 演算子の説明。
$time-var1 と $time-var2 の時間差を計算します。$time-var1 の値から $time-var2 の値を減算します。
$time-var2 の値が $time-var1 の値よりも未来を表す場合は、戻り値は負の期間になります。
$date-var1 または $date-var2 の値が空のシーケンスである場合は、次のエラーが表示されます。
XQuery を実行中にエラーが発生しました : このメソッドに XQuery または XSLT をロードしている際にエラーが発生しました。
Type error in function subtract-dates invocation: expected type [date@http://www.w3.org/2001/XMLSchema],
op:subtract-times(xs:
time $time-var1, xs:time $time-var2) —>xs:
dayTimeDuration
$time-var1 と $time-var2 の時間差を dayTimeDuration 値として返します。
次のクエリ例では、$time-var2 が $time-var1 よりも過去を表すため、正の分数 (ふんすう) が返されます。
<minutes>{xf:get-minutes-from-dayTimeDuration(op:subtract-times(xf:time("08:01:00"),
xf:time("08:00:00")))}</minutes>
次の例では、$time-var2 が $time-var1 より未来を表すため、負の日数が返されます。
<minutes>{xf:get-minutes-from-dayTimeDuration(op:subtract-times(xf:time("08:00:00"),
xf:time("08:01:00")))}</minutes>
W3C の
subtract-times 演算子の説明。
W3C の
date データ型の説明。
W3C の
dayTimeDuration 演算子の説明。
$dateTime-var で指定された日付および時刻に $yearMonthDuration-var を加算します。
op:add-yearMonthDuration-to-dateTime(xs:
dateTime $dateTime-var, xf:
yearMonthDuration $yearMonthDuration-var) —>xs: date Time
$dateTime-var で指定された日付および時刻に $yearMonthDuration-var で指定された年と月を加算したことによる dateTime の結果を返します。返される dateTime 値のタイムゾーンは、$dateTime-var のタイムゾーンと同じです。$dateTime-var にタイムゾーンがない場合は、返される dateTime 値にもタイムゾーンはありません。
次のクエリ例では、2003 年 1 月 1 日という日付および 1:00 AM という時刻に等しい
dateTime 値に 1 年と 1 か月に等しい
yearMonthDuration 値を加算しています。
op:add-yearMonthDuration-to-dateTime(xs:dateTime("2003-01-01T01:00:00"), xf:yearMonthDuration("P1Y1M"))
この場合、次の結果に示すように、2004 年 2 月 1 日という日付と 1:00 AM という時刻に等しい dateTime 値が返されます。
<dateTime>2004-02-01T01:00:00</dateTime>
W3C の
add-yearMonthDuration-to-dateTime 演算子の説明。
W3C の
yearMonthDuration の説明。
xf: yearMonthDuration コンストラクタの説明
W3C の
dateTime データ型の説明。
xf:
dateTime コンストラクタの説明。
$dateTime-var で指定された日付および時刻に $dayTimeDuration-var を加算します。
op:add-dayTimeDuration-to-dateTime(xs:
dateTime $dateTime-var, xf:
dayTimeDuration $dayTimeDuration-var) —> xs:date Time
$dateTime-var で指定された日付と時刻に $dayTimeDuration-var で指定された日数と時間を加算したことによる
dateTime の結果を返します。返される dateTime 値のタイムゾーンは、$dateTime-var のタイムゾーンと同じです。$dateTime-var にタイムゾーンがない場合は、返される dateTime 値にもタイムゾーンはありません。
次のクエリ例では、2003 年 1 月 1 日という日付と 1:00 AM という時刻に等しい dateTime 値に 1 日と 2 時間 30 分 5 秒に等しい dayTimeDuration 値を加算しています。
op:add-dayTimeDuration-to-dateTime(xs:dateTime("2003-01-01T01:00:00"), xf:dayTimeDuration("P1DT2H30M5S"))
この場合、次の結果に示すように、2003 年 1 月 2 日という日付と 3:30:05 AM という時刻に等しい dateTime 値が返されます。
<dateTime>2003-01-02T03:30:05</dateTime>
W3C の
add-dayTimeDuration-to-dateTime 演算子の説明。
W3C の
dayTimeDuration の説明。
xf: dayTimeDuration コンストラクタの説明
W3C の
dateTime データ型の説明。
xs: dateTime コンストラクタの説明
$dateTime-var で指定された日付および時刻から $yearMonthDuration-var で指定された期間を減算します。
op:subtract-yearMonthDuration-from-dateTime(xs:
dateTime $dateTime-var, xf:
yearMonthDuration $yearMonthDuration-var) —>xs:date Time
$dateTime-var で指定された日付および時刻から $yearMonthDuration-var で指定された期間を減算したことによる dateTime 値を返します
。
次のクエリ例では、2003 年 2 月 2 日という日付および 1:01 AM という時刻に等しい dateTime 値から 1 年と 1 か月に等しい正の yearMonthDuration 値を減算しています。
op:subtract-yearMonthDuration-from-dateTime(xs:dateTime("2003-02-02T01:01:00"), xf:yearMonthDuration("P1Y1M"))
この場合、次の結果に示すように、2002 年 1 月 2 日という日付と 1:01 AM という時刻に等しい dateTime 値が返されます。
<positive>2002-01-02T01:01:00</positive>
次のクエリ例では、2003 年 1 月 2 日という日付および 1:01 AM という時刻に等しい dateTime 値から 1 年と 1 か月に等しい負の yearMonthDuration 値を減算しています。
op:subtract-yearMonthDuration-from-dateTime(xs:dateTime("2003-01-02T01:01:00"), xf:yearMonthDuration("-P1Y1M"))
この場合、次の結果に示すように、2004 年 2 月 2 日という日付と 1:01 AM という時刻に等しい dateTime 値が返されます。
<negative>2004-02-02T01:01:00</negative>
W3C の
subtract-yearMonthDuration-from-dateTime 演算子の説明。
W3C の
yearMonthDuration の説明。
xf: yearMonthDuration コンストラクタの説明
W3C の
dateTime データ型の説明。
xs: dateTime コンストラクタの説明
$dateTime-var で指定された日付および時刻から $dayTimeDuration-var で指定された期間を減算します。
op:subtract-dayTimeDuration-from-dateTime(xs:
dateTime $dateTime-var, xf:
dayTimeDuration $ dayTimeDuration-var) —> xs:date Time
$dateTime-var で指定された日付および時刻から $dayTimeDuration-var で指定された期間を減算したことによる dateTime 値を返します
。
次のクエリ例では、2003 年 1 月 2 日という日付と 1:01 AM という時刻に等しい dateTime 値から 1 日と 1 分に等しい正の dayTimeDuration 値を減算しています。
op:subtract-dayTimeDuration-from-dateTime(xs:dateTime("2003-01-02T01:01:00"), xf:dayTimeDuration("P1DT1M"))
この場合、次の結果に示すように、2003 年 1 月 1 日という日付と 1:00 AM という時刻に等しい dateTime 値が返されます。
<positive>2003-01-01T01:00:00</positive>
次のクエリ例では、2003 年 1 月 2 日という日付と 1:01 AM という時刻に等しい dateTime 値から 1 日と 1 分に等しい負の dayTimeDuration 値を減算しています。
op:subtract-dayTimeDuration-from-dateTime(xs:dateTime("2003-01-02T01:01:00"), xf:dayTimeDuration("-P1DT1M"))
この場合、次の結果に示すように、2003 年 1 月 3 日という日付と 1:02 AM という時刻に等しい dateTime 値が返されます。
<negative>2003-01-03T01:02:00</negative>
W3C の
subtract-dayTimeDuration-from-dateTime 演算子の説明。
W3C の
dayTimeDuration の説明。
xf: dayTimeDuration コンストラクタの説明
W3C の
dateTime データ型の説明。
xs: dateTime コンストラクタの説明
$date-var で指定された日付に $yearMonthDuration-var を加算します。
op:add-yearMonthDuration-to-date(xs:
date $date-var, xf:
yearMonthDuration $yearMonthDuration-var) —> xs:date
$date-var で指定された日付に $yearMonthDuration-var で指定された年と月を加算したことによる date の結果を返します。返される date 値のタイムゾーンは、$date-var のタイムゾーンと同じです。$date-var にタイムゾーンがない場合は、返される date 値にもタイムゾーンはありません
。
次のクエリ例では、2003 年 1 月 1 日という日付に等しい date 値に 1 年 1 か月に等しい yearMonthDuration 値を加算しています。
op:add-yearMonthDuration-to-date(xs:date("2003-01-01"), xf:yearMonthDuration("P1Y1M"))
この場合、次の結果に示すように、2004 年 2 月 1 日という日付に等しい date 値が返されます。
W3C の
add-yearMonthDuration-to-date 演算子の説明。
W3C の
yearMonthDuration の説明。
xf: yearMonthDuration コンストラクタの説明
W3C の
date データ型の説明。
xs: date コンストラクタの説明
$date-var で指定された日付に $dayTimeDuration-var を加算します。
op:add-dayTimeDuration-to-date(xs:
date $date-var, xf:
dayTimeDuration $dayTimeDuration-var) —>xs:date
$date-var で指定された日付に $dayTimeDuration-var で指定された日付と時刻を加算したことによる date の結果を返します。返される date 値のタイムゾーンは、$date-var のタイムゾーンと同じです。$date-var にタイムゾーンがない場合は、返される date 値にもタイムゾーンはありません。
次のクエリ例では、2003 年 1 月 1 日に等しい date 値に 1 日と 2 時間 30 分 5 秒に等しい dayTimeDuration 値を加算しています。
op:add-dayTimeDuration-to-date(xs:date("2003-01-01"), xf:dayTimeDuration("P1DT2H30M5S"))
この場合、次の結果に示すように、2003 年 1 月 2 日にという日付に等しい date 値が返されます。
W3C の
add-dayTimeDuration-to-date 演算子の説明。
W3C の
dayTimeDuration の説明。
xf: dayTimeDuration コンストラクタの説明
W3C の
date データ型の説明。
xs: date コンストラクタの説明
$date-var で指定された日付から $yearMonthDuration-var で指定された期間を減算します。
op:subtract-yearMonthDuration-from-date(xs:
date $date-var, xf:
yearMonthDuration $yearMonthDuration-var) —> xs:date
$date-var で指定された日付から $yearMonthDuration-var で指定された期間を減算したことによる date 値を返します。
次のクエリ例では、2003 年 2 月 2 日という日付に等しい date 値から 1 年と 1 か月に等しい正の yearMonthDuration 値を減算しています。
op:subtract-yearMonthDuration-from-date(xs:date("2003-02-02"), xf:yearMonthDuration("P1Y1M"))
この場合、次の結果に示すように、2002 年 1 月 2 日に等しい date 値が返されます。
<positive>2002-01-02</positive>
次のクエリ例では、2003 年 1 月 2 日という日付に等しい date 値から 1 年と 1 か月に等しい負の yearMonthDuration 値を減算しています。
op:subtract-yearMonthDuration-from-date(xs:date("2003-01-02"), xf:yearMonthDuration("-P1Y1M"))
この場合、次の結果に示すように、2004 年 2 月 2 日という日付に等しい date 値が返されます。
<negative>2004-02-02</negative>
W3C の
subtract-yearMonthDuration-from-date 演算子の説明。
W3C の
yearMonthDuration の説明。
xf: yearMonthDuration コンストラクタの説明
W3C の
date データ型の説明。
xs: date コンストラクタの説明
$date-var で指定された日付から $dayTimeDuration-var で指定された期間を減算します。
op:subtract-dayTimeDuration-from-date(xs:
date $date-var, xf:
dayTimeDuration $dayTimeDuration-var) —>xs:date
$date-var で指定された日付から $dayTimeDuration-var で指定された期間を減算したことによる date 値を返します。
次のクエリ例では、2003 年 1 月 2 日という日付に等しい date 値から 1 日と 1 分に等しい正の dayTimeDuration 値を減算しています。
op:subtract-dayTimeDuration-from-date(xs:date("2003-01-02"), xf:dayTimeDuration("P1DT1M"))
この場合、次の結果に示すように、2003 年 1 月 1 日という日付に等しい date 値が返されます。
<positive>2003-01-01</positive>
次のクエリ例では、2003 年 1 月 2 日という日付に等しい date 値から 1 日と 1 分に等しい負の dayTimeDuration 値を減算しています。
op:subtract-dayTimeDuration-from-date(xs:date("2003-01-02"), xf:dayTimeDuration("-P1DT1M"))
この場合、次の結果に示すように、2003 年 1 月 3 日という日付に等しい date 値が返されます。
<negative>2003-01-03</negative>
W3C の
subtract-dayTimeDuration-from-date 演算子の説明。
W3C の
dayTimeDuration の説明。
xf: dayTimeDuration コンストラクタの説明
W3C の
date データ型の説明。
xs: date コンストラクタの説明
$time-var で指定された時刻に $dayTimeDuration-var を加算します。
op:add-dayTimeDuration-to-time(xs:
time $time-var, xf:
dayTimeDuration $dayTimeDuration-var) —>xs: time
$time-var で指定された時刻に $dayTimeDuration-var で指定された日付と時刻を加算したことによる time の結果を返します。返される time 値のタイムゾーンは、$time-var のタイムゾーンと同じです。$time-var にタイムゾーンがない場合は、返される time 値にもタイムゾーンはありません。
次のクエリ例では、1:00 AM という時刻に等しい time 値に 1 日と 2 時間 30 分 5 秒に等しい dayTimeDuration 値を加算しています
。
op:add-dayTimeDuration-to-time(xs:time("01:00:00"), xf:dayTimeDuration("P1DT2H30M5S"))
この場合、次の結果に示すように、3:30:05 AM という時刻に等しい time 値が返されます。
W3C の
add-dayTimeDuration-to-time 演算子の説明。
W3C の
dayTimeDuration の説明。
xf: dayTimeDuration コンストラクタの説明
W3C の
time データ型の説明。
xs:time コンストラクタの説明
$time-var で指定された時刻から $dayTimeDuration-var で指定された期間を減算します。
op:subtract-dayTimeDuration-from-time(xs:
time $time-var, xf:
dayTimeDuration $dayTimeDuration-var) —>xs: time
$time-var で指定された日付および時刻から $dayTimeDuration-var で指定された期間を減算したことによる time 値を返します。
次のクエリ例では、1:01 AM という時刻に等しい time 値から 1 日と 1 分に等しい dayTimeDuration 値を減算しています。
op:subtract-dayTimeDuration-from-time(xs:time("01:01:00"), xf:dayTimeDuration("P1DT1M"))
この場合、次の結果に示すように、1:00 AM という時刻に等しい time 値が返されます。
次のクエリ例では、1:01 AM という時刻に等しい time 値から 1 日と 1 分に等しい負の dayTimeDuration 値を減算しています。
op:subtract-dayTimeDuration-from-time(xs:time("01:01:00"), xf:dayTimeDuration("-P1DT1M"))
この場合、次の結果に示すように、1:02 AM という時刻に等しい time 値が返されます。
W3C の
subtract-dayTimeDuration-from-time 演算子の説明。
W3C の
dayTimeDuration の説明。
xf: dayTimeDuration コンストラクタの説明
W3C の
time データ型の説明。
xs:time コンストラクタの説明
|