Genaue numerische Datentypen

Numerische Datentypen werden zum Speichern von Zahlen verwendet. In der folgenden Tabelle werden die ganzzahligen numerischen Typen in verschiedenen Bereichen beschrieben. Je größer der Bereich, desto mehr Speicher wird benötigt.

Wählen Sie ganzzahlige Datentypen für die Verteilung und für Joinspalten aus. Verwenden Sie ganzzahlige Datentypen, wo dies möglich ist, um von der zusätzlichen Leistung von Zonenmaps zu profitieren.
Tabelle 1. Ganzzahlige Typen
Typ Wert Plattenbelegung
byteint (Aliasname int1) 8-Bit-Werte im Bereich -128 bis 127 1 Byte
smallint (Aliasname int2) 16-Bit-Werte im Bereich -32.768 bis 32.767 2 Byte
integer (Aliasnamen int und int4) 32-Bit-Werte im Bereich -2.147.483.648 bis 2.147.483.647 4 Byte
bigint (Aliasname int8) 64-Bit-Werte im Bereich -9.223.372.036.854.775.808 bis 9.223.372.036.854.775.807 8 Byte
Sie müssen numerische Festkommadatentypen verwenden, wenn Sie die numerische Rundung für eine bestimmte Dezimalstelle definieren wollen. In der folgenden Tabelle werden die numerischen Festkommadatentypen beschrieben.
Tabelle 2. Numerische Festkommadatentypen
Typ Wert Plattenbelegung
numeric(G, A) Numerisch mit Genauigkeit p und Skala s. Die Genauigkeit kann von 1 bis 38 reichen, die Skala reicht von 0 bis zur Genauigkeit. Genauigkeit von 9 oder weniger (4 Byte)

Genauigkeit von 10 - 18 (8 Byte)

Genauigkeit von 19 - 38 (16 Byte)

numeric(G) Äquivalent zu numeric(G, 0).
numerisch Äquivalent zu numeric(18, 0). 8 Byte
dezimal Obwohl dezimal manchmal ein eigenständiger SQL-Datentyp ist, wird er Netezza Performance Server SQL als ein Alias für numerisch behandelt. 4 Byte bis 16 Byte

Verwenden Sie stets den kleinstmöglichen numerischen ganzzahligen Datentyp oder Festkommadatentyp. Wenn Sie Quelldaten in das Netezza Performance Server konvertieren, müssen Sie möglicherweise die Daten analysieren, um den kleinsten Datentyp zu bestimmen, den Sie verwenden können.

Geben Sie den folgenden SQL-Befehl ein, um die kleinste Datenmenge zu ermitteln, die Sie für ganzzahlige numerische Werte und numerische Festkommawerte verwenden können:
   SELECT MIN(column_name), MAX(column_name) FROM table_name;