-
Notifications
You must be signed in to change notification settings - Fork 239
Expand file tree
/
Copy pathtpcds_source.sql
More file actions
429 lines (406 loc) · 21.6 KB
/
tpcds_source.sql
File metadata and controls
429 lines (406 loc) · 21.6 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
--
-- Legal Notice
--
-- This document and associated source code (the "Work") is a part of a
-- benchmark specification maintained by the TPC.
--
-- The TPC reserves all right, title, and interest to the Work as provided
-- under U.S. and international laws, including without limitation all patent
-- and trademark rights therein.
--
-- No Warranty
--
-- 1.1 TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, THE INFORMATION
-- CONTAINED HEREIN IS PROVIDED "AS IS" AND WITH ALL FAULTS, AND THE
-- AUTHORS AND DEVELOPERS OF THE WORK HEREBY DISCLAIM ALL OTHER
-- WARRANTIES AND CONDITIONS, EITHER EXPRESS, IMPLIED OR STATUTORY,
-- INCLUDING, BUT NOT LIMITED TO, ANY (IF ANY) IMPLIED WARRANTIES,
-- DUTIES OR CONDITIONS OF MERCHANTABILITY, OF FITNESS FOR A PARTICULAR
-- PURPOSE, OF ACCURACY OR COMPLETENESS OF RESPONSES, OF RESULTS, OF
-- WORKMANLIKE EFFORT, OF LACK OF VIRUSES, AND OF LACK OF NEGLIGENCE.
-- ALSO, THERE IS NO WARRANTY OR CONDITION OF TITLE, QUIET ENJOYMENT,
-- QUIET POSSESSION, CORRESPONDENCE TO DESCRIPTION OR NON-INFRINGEMENT
-- WITH REGARD TO THE WORK.
-- 1.2 IN NO EVENT WILL ANY AUTHOR OR DEVELOPER OF THE WORK BE LIABLE TO
-- ANY OTHER PARTY FOR ANY DAMAGES, INCLUDING BUT NOT LIMITED TO THE
-- COST OF PROCURING SUBSTITUTE GOODS OR SERVICES, LOST PROFITS, LOSS
-- OF USE, LOSS OF DATA, OR ANY INCIDENTAL, CONSEQUENTIAL, DIRECT,
-- INDIRECT, OR SPECIAL DAMAGES WHETHER UNDER CONTRACT, TORT, WARRANTY,
-- OR OTHERWISE, ARISING IN ANY WAY OUT OF THIS OR ANY OTHER AGREEMENT
-- RELATING TO THE WORK, WHETHER OR NOT SUCH AUTHOR OR DEVELOPER HAD
-- ADVANCE NOTICE OF THE POSSIBILITY OF SUCH DAMAGES.
--
-- Contributors:
-- Gradient Systems
--
-- ============================================================
-- Database name: tpcds_source
-- DBMS name: ANSI Level 2
-- Created on: 2/8/2007 9:38 AM
-- ============================================================
-- ============================================================
-- Table: s_catalog_page
-- ============================================================
create table s_catalog_page
(
cpag_catalog_number integer not null,
cpag_catalog_page_number integer not null,
cpag_department char(20) ,
cpag_id char(16) ,
cpag_start_date char(10) ,
cpag_end_date char(10) ,
cpag_description varchar(100) ,
cpag_type varchar(100)
);
-- ============================================================
-- Table: s_zip_to_gmt
-- ============================================================
create table s_zip_to_gmt
(
zipg_zip char(5) not null,
zipg_gmt_offset integer not null
);
-- ============================================================
-- Table: s_purchase_lineitem
-- ============================================================
create table s_purchase_lineitem
(
plin_purchase_id integer not null,
plin_line_number integer not null,
plin_item_id char(16) ,
plin_promotion_id char(16) ,
plin_quantity integer ,
plin_sale_price numeric(7,2) ,
plin_coupon_amt numeric(7,2) ,
plin_comment varchar(100)
);
-- ============================================================
-- Table: s_customer
-- ============================================================
create table s_customer
(
cust_customer_id char(16) not null,
cust_salutation char(10) ,
cust_last_name char(20) ,
cust_first_name char(20) ,
cust_preffered_flag char(1) ,
cust_birth_date char(10) ,
cust_birth_country char(20) ,
cust_login_id char(13) ,
cust_email_address char(50) ,
cust_last_login_chg_date char(10) ,
cust_first_shipto_date char(10) ,
cust_first_purchase_date char(10) ,
cust_last_review_date char(10) ,
cust_primary_machine_id char(15) ,
cust_secondary_machine_id char(15) ,
cust_street_number smallint ,
cust_suite_number char(10) ,
cust_street_name1 char(30) ,
cust_street_name2 char(30) ,
cust_street_type char(15) ,
cust_city char(60) ,
cust_zip char(10) ,
cust_county char(30) ,
cust_state char(2) ,
cust_country char(20) ,
cust_loc_type char(20) ,
cust_gender char(1) ,
cust_marital_status char(1) ,
cust_educ_status char(20) ,
cust_credit_rating char(10) ,
cust_purch_est numeric(7,2) ,
cust_buy_potential char(15) ,
cust_depend_cnt smallint ,
cust_depend_emp_cnt smallint ,
cust_depend_college_cnt smallint ,
cust_vehicle_cnt smallint ,
cust_annual_income numeric(9,2)
);
-- ============================================================
-- Table: s_customer_address
-- ============================================================
create table s_customer_address
(
cadr_address_id char(16) not null,
cadr_street_number integer ,
cadr_street_name1 char(25) ,
cadr_street_name2 char(25) ,
cadr_street_type char(15) ,
cadr_suitnumber char(10) ,
cadr_city char(60) ,
cadr_county char(30) ,
cadr_state char(2) ,
cadr_zip char(10) ,
cadr_country char(20)
);
-- ============================================================
-- Table: s_purchase
-- ============================================================
create table s_purchase
(
purc_purchase_id integer not null,
purc_store_id char(16) ,
purc_customer_id char(16) ,
purc_purchase_date char(10) ,
purc_purchase_time integer ,
purc_register_id integer ,
purc_clerk_id integer ,
purc_comment char(100)
);
-- ============================================================
-- Table: s_catalog_order
-- ============================================================
create table s_catalog_order
(
cord_order_id integer not null,
cord_bill_customer_id char(16) ,
cord_ship_customer_id char(16) ,
cord_order_date char(10) ,
cord_order_time integer ,
cord_ship_mode_id char(16) ,
cord_call_center_id char(16) ,
cord_order_comments varchar(100)
);
-- ============================================================
-- Table: s_web_order
-- ============================================================
create table s_web_order
(
word_order_id integer not null,
word_bill_customer_id char(16) ,
word_ship_customer_id char(16) ,
word_order_date char(10) ,
word_order_time integer ,
word_ship_mode_id char(16) ,
word_web_site_id char(16) ,
word_order_comments char(100)
);
-- ============================================================
-- Table: s_item
-- ============================================================
create table s_item
(
item_item_id char(16) not null,
item_item_description char(200) ,
item_list_price numeric(7,2) ,
item_wholesale_cost numeric(7,2) ,
item_size char(20) ,
item_formulation char(20) ,
item_color char(20) ,
item_units char(10) ,
item_container char(10) ,
item_manager_id integer
);
-- ============================================================
-- Table: s_catalog_order_lineitem
-- ============================================================
create table s_catalog_order_lineitem
(
clin_order_id integer not null,
clin_line_number integer not null,
clin_item_id char(16) ,
clin_promotion_id char(16) ,
clin_quantity integer ,
clin_sales_price numeric(7,2) ,
clin_coupon_amt numeric(7,2) ,
clin_warehouse_id char(16) ,
clin_ship_date char(10) ,
clin_catalog_number integer ,
clin_catalog_page_number integer ,
clin_ship_cost numeric(7,2)
);
-- ============================================================
-- Table: s_web_order_lineitem
-- ============================================================
create table s_web_order_lineitem
(
wlin_order_id integer not null,
wlin_line_number integer not null,
wlin_item_id char(16) ,
wlin_promotion_id char(16) ,
wlin_quantity integer ,
wlin_sales_price numeric(7,2) ,
wlin_coupon_amt numeric(7,2) ,
wlin_warehouse_id char(16) ,
wlin_ship_date char(10) ,
wlin_ship_cost numeric(7,2) ,
wlin_web_page_id char(16)
);
-- ============================================================
-- Table: s_store
-- ============================================================
create table s_store
(
stor_store_id char(16) not null,
stor_closed_date char(10) ,
stor_name char(50) ,
stor_employees integer ,
stor_floor_space integer ,
stor_hours char(20) ,
stor_store_manager char(40) ,
stor_market_id integer ,
stor_geography_class char(100) ,
stor_market_manager char(40) ,
stor_tax_percentage numeric(5,2)
);
-- ============================================================
-- Table: s_call_center
-- ============================================================
create table s_call_center
(
call_center_id char(16) not null,
call_open_date char(10) ,
call_closed_date char(10) ,
call_center_name char(50) ,
call_center_class char(50) ,
call_center_employees integer ,
call_center_sq_ft integer ,
call_center_hours char(20) ,
call_center_manager char(40) ,
call_center_tax_percentage numeric(7,2)
);
-- ============================================================
-- Table: s_web_site
-- ============================================================
create table s_web_site
(
wsit_web_site_id char(16) not null,
wsit_open_date char(10) ,
wsit_closed_date char(10) ,
wsit_site_name char(50) ,
wsit_site_class char(50) ,
wsit_site_manager char(40) ,
wsit_tax_percentage decimal(5,2)
);
-- ============================================================
-- Table: s_warehouse
-- ============================================================
create table s_warehouse
(
wrhs_warehouse_id char(16) not null,
wrhs_warehouse_desc char(200) ,
wrhs_warehouse_sq_ft integer
);
-- ============================================================
-- Table: s_web_page
-- ============================================================
create table s_web_page
(
wpag_web_page_id char(16) not null,
wpag_create_date char(10) ,
wpag_access_date char(10) ,
wpag_autogen_flag char(1) ,
wpag_url char(100) ,
wpag_type char(50) ,
wpag_char_cnt integer ,
wpag_link_cnt integer ,
wpag_image_cnt integer ,
wpag_max_ad_cnt integer
);
-- ============================================================
-- Table: s_promotion
-- ============================================================
create table s_promotion
(
prom_promotion_id char(16) not null,
prom_promotion_name char(30) ,
prom_start_date char(10) ,
prom_end_date char(10) ,
prom_cost numeric(7,2) ,
prom_response_target char(1) ,
prom_channel_dmail char(1) ,
prom_channel_email char(1) ,
prom_channel_catalog char(1) ,
prom_channel_tv char(1) ,
prom_channel_radio char(1) ,
prom_channel_press char(1) ,
prom_channel_event char(1) ,
prom_channel_demo char(1) ,
prom_channel_details char(100) ,
prom_purpose char(15) ,
prom_discount_active char(1) ,
prom_discount_pct numeric(5,2)
);
-- ============================================================
-- Table: s_store_returns
-- ============================================================
create table s_store_returns
(
sret_store_id char(16) ,
sret_purchase_id char(16) not null,
sret_line_number integer not null,
sret_item_id char(16) not null,
sret_customer_id char(16) ,
sret_return_date char(10) ,
sret_return_time char(10) ,
sret_ticket_number char(20) ,
sret_return_qty integer ,
sret_return_amt numeric(7,2) ,
sret_return_tax numeric(7,2) ,
sret_return_fee numeric(7,2) ,
sret_return_ship_cost numeric(7,2) ,
sret_refunded_cash numeric(7,2) ,
sret_reversed_charge numeric(7,2) ,
sret_store_credit numeric(7,2) ,
sret_reason_id char(16)
);
-- ============================================================
-- Table: s_catalog_returns
-- ============================================================
create table s_catalog_returns
(
cret_call_center_id char(16) ,
cret_order_id integer not null,
cret_line_number integer not null,
cret_item_id char(16) not null,
cret_return_customer_id char(16) ,
cret_refund_customer_id char(16) ,
cret_return_date char(10) ,
cret_return_time char(10) ,
cret_return_qty integer ,
cret_return_amt numeric(7,2) ,
cret_return_tax numeric(7,2) ,
cret_return_fee numeric(7,2) ,
cret_return_ship_cost numeric(7,2) ,
cret_refunded_cash numeric(7,2) ,
cret_reversed_charge numeric(7,2) ,
cret_merchant_credit numeric(7,2) ,
cret_reason_id char(16) ,
cret_shipmode_id char(16) ,
cret_catalog_page_id char(16) ,
cret_warehouse_id char(16)
);
-- ============================================================
-- Table: s_web_returns
-- ============================================================
create table s_web_returns
(
wret_web_page_id char(16) ,
wret_order_id integer not null,
wret_line_number integer not null,
wret_item_id char(16) not null,
wret_return_customer_id char(16) ,
wret_refund_customer_id char(16) ,
wret_return_date char(10) ,
wret_return_time char(10) ,
wret_return_qty integer ,
wret_return_amt numeric(7,2) ,
wret_return_tax numeric(7,2) ,
wret_return_fee numeric(7,2) ,
wret_return_ship_cost numeric(7,2) ,
wret_refunded_cash numeric(7,2) ,
wret_reversed_charge numeric(7,2) ,
wret_account_credit numeric(7,2) ,
wret_reason_id char(16)
);
-- ============================================================
-- Table: s_inventory
-- ============================================================
create table s_inventory
(
invn_warehouse_id char(16) not null,
invn_item_id char(16) not null,
invn_date char(10) not null,
invn_qty_on_hand integer
);