TPC-H包括8张表(表上有些约束等需要满足,参见TPC-H规范,本节不再罗列),如下:
PART:表示零件的信息,如表4-1所示。
SUPPLIER:表示供货商的信息,如表4-2所示。
PARTSUPP:表示供货商的零件的信息,如表4-3所示。
CUSTOMER:表示消费者的信息,如表4-4所示。
ORDERS:表示订单的信息,如表4-5所示。
LINEITEM:表示在线商品的信息,如表4-6所示。
NATION:表示国家的信息,如表4-7所示。
REGION:表示地区的信息,如表4-8所示。
这8张表之间的关系,如图4-1所示或图4-2所示。
表4-1 PART表的结构表
列名 | 数据类型 | 注释(如果有主外键等,不强制必须实现) |
P_PARTKEY | identifier | 主键,值范围是1到SF*200000 |
P_NAME | VARCHAR(55) | |
P_MFGR | CHAR(25) | |
P_BRAND | CHAR(10) | |
P_TYPE | VARCHAR(25) | |
P_SIZE | INTEGER | |
P_CONTAINER | CHAR(10) | |
P_RETAILPRICE | DOUBLE | |
P_COMMENT | VARCHAR(23) | |
表4-2 SUPPLIER表的结构表
列名 | 数据类型 | 注释 |
S_SUPPKEY | INTEGER | 主键,值范围是1到SF*10000 |
S_NAME | CHAR(25) | |
S_ADDRESS | VARCHAR(40) | |
S_NATIONKEY | INTEGER | Foreign Key to N_NATIONKEY |
S_PHONE | CHAR(15) | |
S_ACCTBAL | DOUBLE | |
S_COMMENT | VARCHAR(101) | |
表4-3 PARTSUPP表的结构表
列名 | 数据类型 | 注释 |
PS_PARTKEY | INTEGER | Foreign Key to P_PARTKEY。与PS_SUPPKEY联合构成主键 |
PS_SUPPKEY | INTEGER | Foreign Key to S_SUPPKEY |
PS_AVAILQTY | INTEGER | |
PS_SUPPLYCOST | DOUBLE | |
PS_COMMENT | VARCHAR(199) | |
表4-4 CUSTOMER表的结构表
列名 | 数据类型 | 注释 |
C_CUSTKEY | INTEGER | 主键。值范围是1到SF*150000 |
C_NAME | VARCHAR(25) | |
C_ADDRESS | VARCHAR(40) | |
C_NATIONKEY | INTEGER | Foreign Key to N_NATIONKEY |
C_PHONE | CHAR(15) | |
C_ACCTBAL | DOUBLE | |
C_MKTSEGMENT | CHAR(10) | |
C_COMMENT | VARCHAR(117) | |
表4-5 ORDERS表的结构表
列名 | 数据类型 | 注释 |
O_ORDERKEY | INTEGER(Identifier) | 主键。值范围是1到SF*150000。 |
O_CUSTKEY | INTEGER(Identifier) | Foreign Key to C_CUSTKEY |
O_ORDERSTATUS | CHAR(1) | |
O_TOTALPRICE | DOUBLE | |
O_ORDERDATE | DATE | |
O_ORDERPRIORITY | CHAR(15) | |
O_CLERK | CHAR(15) | |
O_SHIPPRIORITY | INTEGER | |
O_COMMENT | VARCHAR(79) | |
表4-6 LINEITEM表的结构表
列名 | 数据类型 | 注释 |
L_ORDERKEY | INTEGER | Foreign Key to O_ORDERKEY。与L_LINENUMBER联合构成主键 |
L_PARTKEY | INTEGER | Foreign key to P_PARTKEY, first part of the compound Foreign Key to (PS_PARTKEY, PS_SUPPKEY) with L_SUPPKEY |
L_SUPPKEY | INTEGER | Foreign key to S_SUPPKEY, second part of the compound Foreign Key to (PS_PARTKEY, TPC BenchmarkTM H Standard Specification Revision 2.16.0 Page 17 PS_SUPPKEY) with L_PARTKEY |
L_LINENUMBER | INTEGER | |
L_QUANTITY | DOUBLE | |
L_EXTENDEDPRICE | DOUBLE | |
L_DISCOUNT | DOUBLE | between 0.00 and 1.00 |
L_TAX | DOUBLE | |
L_RETURNFLAG | CHAR(1) | |
L_LINESTATUS | CHAR(1) | |
L_SHIPDATE | DATE | L_SHIPDATE <= L_RECEIPTDAT |
L_COMMITDATE | DATE | |
L_RECEIPTDATE | DATE | |
L_SHIPINSTRUCT | CHAR(25) | |
L_SHIPMODE | CHAR(10) | |
L_COMMENT | VARCHAR(44) | |
表4-7 NATION表的结构表
列名 | 数据类型 | 注释 |
N_NATIONKEY | INTEGER | 主键(25个国家) |
N_NAME | CHAR(25) | |
N_REGIONKEY | INTEGER | Foreign Key to R_REGIONKEY |
N_COMMENT | VARCHAR(152) | |
表4-8 REGION表的结构表
列名 | 数据类型 | 注释 |
R_REGIONKEY | INTEGER | 主键(5个地区) |
R_NAME | CHAR(25) | |
R_COMMENT | VARCHAR(152) | |
PS_SUPPLYCOST | DOUBLE | |
PS_COMMENT | VARCHAR(199) | |
![TPC-H系列---2---TPC-H表结构及表之间的关系 - 那海蓝蓝 - 那海蓝蓝的博客 TPC-H系列---2---TPC-H表结构及表之间的关系 - 那海蓝蓝 - 那海蓝蓝的博客](http://img0.ph.126.net/ZJmJ-Gff7zN402A7Hb7oXg==/4859102523056486814.png)
图4-1 TPC-H表结构关系图
![TPC-H系列---2---TPC-H表结构及表之间的关系 - 那海蓝蓝 - 那海蓝蓝的博客 TPC-H系列---2---TPC-H表结构及表之间的关系 - 那海蓝蓝 - 那海蓝蓝的博客](http://img1.ph.126.net/sOpVT_jdgM0tbotlQ2StyQ==/6597839424797984233.png)
图4-2 TPC-H标准定义的模式图