精确数字数据类型

数字数据类型用于存储数字。 下表描述了不同范围内的整数数字类型。 范围越大,需要的存储空间就越大。

为分布列和连接列选择整数数据类型。 尽可能使用整数数据类型,以便从区域地图的附加性能中获益。
表 1. 整数类型
类型 磁盘使用情况
BYTEINT(别名 INT1) 范围为 -128 至 127 的 8 位数值 1 个字节
小int2 范围为 -32,768 至 32,767 的 16 位数值 2 字节
整数 范围为-2,147,483,648 至 2,147,483,647 的 32 位数值 4 个字节
bigint(别名int8 范围为-9,223,372,036,854,775,808 至 9,223,372,036,854,775,807 的 64 位数值 8 个字节
您可以使用定点数值数据类型定义四舍五入到特定小数位的数值。 下表描述了定点数字数据类型。
表 2. 定点数字类型
类型 磁盘使用情况
NUMERIC(p,s) 精度为 p、刻度为 s 的数值。 精度范围从 1 到 38,刻度从 0 到精度。 精度为 9 或更低(4 字节)

精度为 10 - 18(8 字节)

精度为 19 - 38(16 个字节)

NUMERIC(p) 等价于 numeric(p,0)。
数值 等价于 numeric(18,0)。 8 个字节
十进制 虽然十进制有时是一种独特的 SQL 数据类型,但Netezza Performance ServerSQL 将其视为数值的别名。 4 字节至 16 字节

尽可能使用最小的整数或定点数值数据类型。 将源数据转换到Netezza Performance Server系统时,可能需要对数据进行分析,以确定可以使用的最小数据类型。

要确定整数和定点数值的最小数据大小,请键入以下 SQL 命令:
   SELECT MIN(column_name), MAX(column_name) FROM table_name;