Interval データ型
システムは、非標準のインターバル・データ型を使用することで、インターバルのアンロードとロードをサポートする。
- 構文
[ [ '-' ] <digit>+ ' '* 'y'['e'['a'['r'['s']]]] ' '* ] [ [ '-' ] <digit>+ ' '* 'm'['o'['n'['t'['h'['s']]]]] ' '* ] [ [ '-' ] <digit>+ ' '* 'd'['a'['y'['s']]] ' '* ] [ [ '-' ] <time> ]- 説明
- オプションの要素は、大括弧で囲みます。
- リテラル文字は、単一引用符で囲みます。
- * は、ゼロ個以上を示します。
- + は、1 個以上を示します。
- <digt>はi10進数0~9のいずれかのインスタンス。
- <tie>はmローダーの時間構文のインスタンスである。
- 制限
- 年の最大値は、0x7fffffff または 12 (10 進数 178956970) です。
- 月の最大値は、0x7fffffff (10 進数 2147483647) です。
- 日の最大値は 0x7fffffffffffffff または (1000000 x 60 x 60 x 24) (10 進数 106751991) です。
- 時間の最大値は 0x7fffffffffffffff または (1000000 x 60 x 60) (10 進数 2562047788) です。
- 分の最大値は 10 進数 60 です。
- 秒の最大値は 10 進数 60 です。
Netezza Performance Serverのアンロード間隔フォーマットには次の動作があります:
- 列の時間間隔の単位指定を受け入れます。ただし、内部的には無視します。 以下に例を示します。
create external table tablename (colA interval year to month, colB interval hour) - 時間間隔はすべて同じです。任意の組み合わせの単位の値を格納できます。
- 有効な単位は、year、month、day、hour、minute、および
second (小文字) です。単数形でも複数形でもかまいません。 例:
2 year 3 month 4 day 2 years 3 months 4 days - 時間間隔単位 hour、minute、および
second を除き、すべてのリテラル値には単位が含まれます。 以下に例を示します。
1 year 1 month 1 day - 単位の hour、minute、second の時間間隔は従来の 10 進数の時間形式であり、24HOUR スタイルです。 例:
01:01:01 01:01:01.1 - すべてのリテラルは、正の値も負の値も取ることができます。 例:
-1 year 1 year 01:01:01 -01:01:01 - 時間間隔ストリング・フィールドには、0 個以上の先頭スペースと末尾スペースを含めることができます。 以下は、先頭スペースまたは末尾スペースを含む有効な値の例です (分かりやすく、フィールド区切り文字で区切って示しています)。
|1 year 1 day| | 2 years 2 months | |3 days 03:03:03.333|