fn:months-from-duration 関数
fn:months-from-duration 関数は、 期間値の月コンポーネントを戻します。
構文
- 期間値
- 月コンポーネントが取り出される期間値。
duration-value は、空のシーケンスか、または xs:dayTimeDuration、 xs:duration、xs:yearMonthDuration のいずれかのタイプの値です。
戻り値
戻り値は、duration-value のタイプによって異なります。
- duration-value が xs:duration タイプまたは xs:yearMonthDuration タイプの場合、戻り値は xs:integer タイプであり、 -11 から 11 (両端を含む) の範囲内の値です。 値は、xs:yearMonthDuration としてキャストされた duration-value の月コンポーネントです。 duration-value が負の数である場合、この値も負の数になります。
- duration-value が xs:dayTimeDuration タイプの場合、 戻り値は 0 です。
- duration-value が空のシーケンスである場合、戻り値は空のシーケンスです。
xs:yearMonthDuration として キャストされた duration-value の月コンポーネントは、 duration-value の月の総数を 12 で除算して 余った月数 (整数) です。
例
以下の関数は、期間が 20 年と 5 カ月の月コンポーネントを戻します。
fn:months-from-duration(xs:duration("P20Y5M"))戻り値は 5 です。
以下の関数は、yearMonthDuration が -9 年と -13 カ月の月コンポーネントを戻します。
fn:months-from-duration(xs:yearMonthDuration("-P9Y13M"))戻り値は -1 です。 期間の総月数を計算する場合、-13 カ月は -1 年と -1 カ月に変換されます。 この期間は -P10Y1M と等しく、これは -1 カ月の月コンポーネントを持ちます。
以下の関数は、期間が 14 年 11 カ月 40 日 13 時間の月コンポーネントを戻します。
xquery fn:months-from-duration(xs:duration("P14Y11M40DT13H"))戻り値は 11 です。
