WEEK スカラー関数
WEEK 関数は、年の週を表す 1 から 54 の範囲の整数を戻します。 週は日曜日から始まり、1 月 1 日は常に 第 1 週に含まれます。
スキーマは SYSIBM です。
引数は、日付、タイム・スタンプ、文字ストリング、またはグラフィック・ストリングのいずれかの組み込みデータ・タイプの値を戻す式であることが必要です。 expression が文字ストリングまたはグラフィック・ストリングの場合、 この expression は CLOB または DBCLOB であってはなりません。また expression の値は、実際の長さが 255 バイト以下の、日付またはタイム・スタンプの有効なストリング表現であることが必要です。 日付とタイムスタンプの文字列表現の有効な形式については、「日時値の文字列表現」 を参照してください。
expression がタイム・ゾーン付きのタイム・スタンプ、またはタイム・ゾーン付きのタイム・スタンプの有効なストリング表現である場合、結果は日時値の UTC 表現から決定されます。
この関数の結果は長精度整数 (large integer) です。
結果はnullになる可能性があります。引数がnullの場合、結果もnull値となります。
例1: サンプルテーブル DSN8D10.PROJ を使用して、整数型ホスト変数 WEEKに、プロジェクト「 AD2100 」が終了した年の週を設定します。
SELECT WEEK(PRENDATE)
INTO :WEEK
FROM DSN8D10.PROJ
WHERE PROJNO = 'AD2100';この結果、WEEK は 6 に設定されます。例 2: 以下の WEEK 関数の呼び出しは、同じ結果を戻します。
SELECT WEEK('1993-08-10-20.00.00'),
WEEK('1993-08-10-20.00.00-08:00'),
WEEK('1993-08-10-20.00.00+09:00')
FROM SYSIBM.SYSDUMMY1;この SELECT ステートメントのそれぞれの WEEK 関数の呼び出しについて、結果は 33 になります。入力引数がタイム・ゾーンを含む場合、結果は入力値の UTC 表現から決定されます。 SELECT 文のタイム・ゾーン付きのタイム・スタンプのストリング表現は、すべて同じ UTC 表現: '1993-08-10-20.00.00' になります。
