例: TIMEデータ型の圧縮 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQL演算子およびユーザー定義関数

Product
Advanced SQL Engine
Teradata Database
Release Number
17.05
Published
2021年1月
Language
日本語
Last Update
2021-03-31
dita:mapPath
ja-JP/xwv1596137968859.ditamap
dita:ditavalPath
ja-JP/xwv1596137968859.ditaval
dita:id
B035-1210
Product Category
Software
Teradata Vantage

TIMEデータ型のデータを圧縮解除するには、6バイト必要です。次のテーブルに、そのバイトを分解し、それぞれの有効範囲と最小ビット数を示します。

時間 バイト 有効範囲 最小ビット数
時間 1 00 23 5
1 00 59 6
4 00 000000 61.999999 6~26 (秒精度によって異なります)

TIMEの次の値を挿入するとします。

INSERT into t1(1, TIME'03:38:06');

次のSQL文が指定されていたとします。

CREATE TABLE table t1(pk int, col1 time(0) compress using ts_compress decompress using ts_decompress);
必要なビット数は次のとおりです。
  • 3時= 5
  • 38分= 6
  • 6秒= 6

TIMEを表わすために必要なビットの総数は17です。最小バイト数は3です。TIME (TIMEZONEなし)では6バイトを使用するため、TS_COMPRESSは6バイトを3バイトに圧縮します。この関数によって、3バイトが節約されます。