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) |
|

图4-1 TPC-H表结构关系图

图4-2 TPC-H标准定义的模式图