]> de.git.xonotic.org Git - xonotic/xonstatdb.git/blob - tables/games.tab
Add TKA to the full build.
[xonotic/xonstatdb.git] / tables / games.tab
1 CREATE TABLE xonstat.games
2 (
3   game_id bigserial NOT NULL,
4   start_dt timestamp without time zone NOT NULL,
5   game_type_cd character varying(10) NOT NULL,
6   server_id integer NOT NULL,
7   map_id integer NOT NULL,
8   duration interval,
9   winner integer,
10   match_id character varying(64),
11   mod character varying(64),
12   create_dt timestamp without time zone NOT NULL DEFAULT (current_timestamp at time zone 'UTC'),
13   players integer[],
14   CONSTRAINT games_pk PRIMARY KEY (game_id),
15   CONSTRAINT games_fk001 FOREIGN KEY (game_type_cd)
16       REFERENCES xonstat.cd_game_type (game_type_cd) MATCH SIMPLE
17       ON UPDATE NO ACTION ON DELETE NO ACTION,
18   CONSTRAINT games_fk002 FOREIGN KEY (server_id)
19       REFERENCES xonstat.servers (server_id) MATCH SIMPLE
20       ON UPDATE NO ACTION ON DELETE NO ACTION,
21   CONSTRAINT games_fk003 FOREIGN KEY (map_id)
22       REFERENCES xonstat.maps (map_id) MATCH SIMPLE
23       ON UPDATE NO ACTION ON DELETE NO ACTION,
24   CONSTRAINT games_uk001 UNIQUE (server_id, match_id)
25 )
26 WITH (
27   OIDS=FALSE
28 );
29 CREATE INDEX games_ix001 on games(create_dt);
30 ALTER TABLE xonstat.games OWNER TO xonstat;
31
32 CREATE TABLE IF NOT EXISTS xonstat.games_2014q1 ( 
33         CHECK ( create_dt >= DATE '2014-01-01' AND create_dt < DATE '2014-04-01' ) 
34 ) INHERITS (games);
35
36 CREATE TABLE IF NOT EXISTS xonstat.games_2014q2 ( 
37         CHECK ( create_dt >= DATE '2014-04-01' AND create_dt < DATE '2014-07-01' ) 
38 ) INHERITS (games);
39
40 CREATE TABLE IF NOT EXISTS xonstat.games_2014q3 ( 
41         CHECK ( create_dt >= DATE '2014-07-01' AND create_dt < DATE '2014-10-01' ) 
42 ) INHERITS (games);
43
44 CREATE TABLE IF NOT EXISTS xonstat.games_2014q4 ( 
45         CHECK ( create_dt >= DATE '2014-10-01' AND create_dt < DATE '2015-01-01' ) 
46 ) INHERITS (games);
47
48 CREATE TABLE IF NOT EXISTS xonstat.games_2015q1 ( 
49         CHECK ( create_dt >= DATE '2015-01-01' AND create_dt < DATE '2015-04-01' ) 
50 ) INHERITS (games);
51
52 CREATE TABLE IF NOT EXISTS xonstat.games_2015q2 ( 
53         CHECK ( create_dt >= DATE '2015-04-01' AND create_dt < DATE '2015-07-01' ) 
54 ) INHERITS (games);
55
56 CREATE TABLE IF NOT EXISTS xonstat.games_2015q3 ( 
57         CHECK ( create_dt >= DATE '2015-07-01' AND create_dt < DATE '2015-10-01' ) 
58 ) INHERITS (games);
59
60 CREATE TABLE IF NOT EXISTS xonstat.games_2015q4 ( 
61         CHECK ( create_dt >= DATE '2015-10-01' AND create_dt < DATE '2016-01-01' ) 
62 ) INHERITS (games);
63
64 CREATE TABLE IF NOT EXISTS xonstat.games_2016q1 ( 
65         CHECK ( create_dt >= DATE '2016-01-01' AND create_dt < DATE '2016-04-01' ) 
66 ) INHERITS (games);
67
68 CREATE TABLE IF NOT EXISTS xonstat.games_2016q2 ( 
69         CHECK ( create_dt >= DATE '2016-04-01' AND create_dt < DATE '2016-07-01' ) 
70 ) INHERITS (games);
71
72 CREATE TABLE IF NOT EXISTS xonstat.games_2016q3 ( 
73         CHECK ( create_dt >= DATE '2016-07-01' AND create_dt < DATE '2016-10-01' ) 
74 ) INHERITS (games);
75
76 CREATE TABLE IF NOT EXISTS xonstat.games_2016q4 ( 
77         CHECK ( create_dt >= DATE '2016-10-01' AND create_dt < DATE '2017-01-01' ) 
78 ) INHERITS (games);
79
80 CREATE TABLE IF NOT EXISTS xonstat.games_2017q1 ( 
81         CHECK ( create_dt >= DATE '2017-01-01' AND create_dt < DATE '2017-04-01' ) 
82 ) INHERITS (games);
83
84 CREATE TABLE IF NOT EXISTS xonstat.games_2017q2 ( 
85         CHECK ( create_dt >= DATE '2017-04-01' AND create_dt < DATE '2017-07-01' ) 
86 ) INHERITS (games);
87
88 CREATE TABLE IF NOT EXISTS xonstat.games_2017q3 ( 
89         CHECK ( create_dt >= DATE '2017-07-01' AND create_dt < DATE '2017-10-01' ) 
90 ) INHERITS (games);
91
92 CREATE TABLE IF NOT EXISTS xonstat.games_2017q4 ( 
93         CHECK ( create_dt >= DATE '2017-10-01' AND create_dt < DATE '2018-01-01' ) 
94 ) INHERITS (games);
95
96 CREATE TABLE IF NOT EXISTS xonstat.games_2018q1 ( 
97         CHECK ( create_dt >= DATE '2018-01-01' AND create_dt < DATE '2018-04-01' ) 
98 ) INHERITS (games);
99
100 CREATE TABLE IF NOT EXISTS xonstat.games_2018q2 ( 
101         CHECK ( create_dt >= DATE '2018-04-01' AND create_dt < DATE '2018-07-01' ) 
102 ) INHERITS (games);
103
104 CREATE TABLE IF NOT EXISTS xonstat.games_2018q3 ( 
105         CHECK ( create_dt >= DATE '2018-07-01' AND create_dt < DATE '2018-10-01' ) 
106 ) INHERITS (games);
107
108 CREATE TABLE IF NOT EXISTS xonstat.games_2018q4 ( 
109         CHECK ( create_dt >= DATE '2018-10-01' AND create_dt < DATE '2019-01-01' ) 
110 ) INHERITS (games);
111
112 CREATE TABLE IF NOT EXISTS xonstat.games_2019q1 ( 
113         CHECK ( create_dt >= DATE '2019-01-01' AND create_dt < DATE '2019-04-01' ) 
114 ) INHERITS (games);
115
116 CREATE TABLE IF NOT EXISTS xonstat.games_2019q2 ( 
117         CHECK ( create_dt >= DATE '2019-04-01' AND create_dt < DATE '2019-07-01' ) 
118 ) INHERITS (games);
119
120 CREATE TABLE IF NOT EXISTS xonstat.games_2019q3 ( 
121         CHECK ( create_dt >= DATE '2019-07-01' AND create_dt < DATE '2019-10-01' ) 
122 ) INHERITS (games);
123
124 CREATE TABLE IF NOT EXISTS xonstat.games_2019q4 ( 
125         CHECK ( create_dt >= DATE '2019-10-01' AND create_dt < DATE '2020-01-01' ) 
126 ) INHERITS (games);
127
128 CREATE TABLE IF NOT EXISTS xonstat.games_2020q1 ( 
129         CHECK ( create_dt >= DATE '2020-01-01' AND create_dt < DATE '2020-04-01' ) 
130 ) INHERITS (games);
131
132 CREATE TABLE IF NOT EXISTS xonstat.games_2020q2 ( 
133         CHECK ( create_dt >= DATE '2020-04-01' AND create_dt < DATE '2020-07-01' ) 
134 ) INHERITS (games);
135
136 CREATE TABLE IF NOT EXISTS xonstat.games_2020q3 ( 
137         CHECK ( create_dt >= DATE '2020-07-01' AND create_dt < DATE '2020-10-01' ) 
138 ) INHERITS (games);
139
140 CREATE TABLE IF NOT EXISTS xonstat.games_2020q4 ( 
141         CHECK ( create_dt >= DATE '2020-10-01' AND create_dt < DATE '2021-01-01' ) 
142 ) INHERITS (games);
143
144 CREATE TABLE IF NOT EXISTS xonstat.games_2021q1 ( 
145         CHECK ( create_dt >= DATE '2021-01-01' AND create_dt < DATE '2021-04-01' ) 
146 ) INHERITS (games);
147
148 CREATE INDEX games_2021q1_ix001 on games_2021q1(create_dt);
149 CREATE INDEX games_2021q1_ix002 on games_2021q1 using gin(players);
150 CREATE UNIQUE INDEX games_2021q1_pk on games_2021q1(game_id);
151 ALTER TABLE games_2021q1 ADD PRIMARY KEY USING INDEX games_2021q1_pk;
152
153 CREATE TABLE IF NOT EXISTS xonstat.games_2021q2 ( 
154         CHECK ( create_dt >= DATE '2021-04-01' AND create_dt < DATE '2021-07-01' ) 
155 ) INHERITS (games);
156
157 CREATE INDEX games_2021q2_ix001 on games_2021q2(create_dt);
158 CREATE INDEX games_2021q2_ix002 on games_2021q2 using gin(players);
159 CREATE UNIQUE INDEX games_2021q2_pk on games_2021q2(game_id);
160 ALTER TABLE games_2021q2 ADD PRIMARY KEY USING INDEX games_2021q2_pk;
161
162 CREATE TABLE IF NOT EXISTS xonstat.games_2021q3 ( 
163         CHECK ( create_dt >= DATE '2021-07-01' AND create_dt < DATE '2021-10-01' ) 
164 ) INHERITS (games);
165
166 CREATE INDEX games_2021q3_ix001 on games_2021q3(create_dt);
167 CREATE INDEX games_2021q3_ix002 on games_2021q3 using gin(players);
168 CREATE UNIQUE INDEX games_2021q3_pk on games_2021q3(game_id);
169 ALTER TABLE games_2021q3 ADD PRIMARY KEY USING INDEX games_2021q3_pk;
170
171 CREATE TABLE IF NOT EXISTS xonstat.games_2021q4 ( 
172         CHECK ( create_dt >= DATE '2021-10-01' AND create_dt < DATE '2022-01-01' ) 
173 ) INHERITS (games);
174
175 CREATE INDEX games_2021q4_ix001 on games_2021q4(create_dt);
176 CREATE INDEX games_2021q4_ix002 on games_2021q4 using gin(players);
177 CREATE UNIQUE INDEX games_2021q4_pk on games_2021q4(game_id);
178 ALTER TABLE games_2021q4 ADD PRIMARY KEY USING INDEX games_2021q4_pk;
179
180 CREATE TABLE IF NOT EXISTS xonstat.games_2022q1 ( 
181         CHECK ( create_dt >= DATE '2022-01-01' AND create_dt < DATE '2022-04-01' ) 
182 ) INHERITS (games);
183
184 CREATE INDEX games_2022q1_ix001 on games_2022q1(create_dt);
185 CREATE INDEX games_2022q1_ix002 on games_2022q1 using gin(players);
186 CREATE UNIQUE INDEX games_2022q1_pk on games_2022q1(game_id);
187 ALTER TABLE games_2022q1 ADD PRIMARY KEY USING INDEX games_2022q1_pk;
188
189 CREATE TABLE IF NOT EXISTS xonstat.games_2022q2 ( 
190         CHECK ( create_dt >= DATE '2022-04-01' AND create_dt < DATE '2022-07-01' ) 
191 ) INHERITS (games);
192
193 CREATE INDEX games_2022q2_ix001 on games_2022q2(create_dt);
194 CREATE INDEX games_2022q2_ix002 on games_2022q2 using gin(players);
195 CREATE UNIQUE INDEX games_2022q2_pk on games_2022q2(game_id);
196 ALTER TABLE games_2022q2 ADD PRIMARY KEY USING INDEX games_2022q2_pk;
197
198 CREATE TABLE IF NOT EXISTS xonstat.games_2022q3 ( 
199         CHECK ( create_dt >= DATE '2022-07-01' AND create_dt < DATE '2022-10-01' ) 
200 ) INHERITS (games);
201
202 CREATE INDEX games_2022q3_ix001 on games_2022q3(create_dt);
203 CREATE INDEX games_2022q3_ix002 on games_2022q3 using gin(players);
204 CREATE UNIQUE INDEX games_2022q3_pk on games_2022q3(game_id);
205 ALTER TABLE games_2022q3 ADD PRIMARY KEY USING INDEX games_2022q3_pk;
206
207 CREATE TABLE IF NOT EXISTS xonstat.games_2022q4 ( 
208         CHECK ( create_dt >= DATE '2022-10-01' AND create_dt < DATE '2023-01-01' ) 
209 ) INHERITS (games);
210
211 CREATE INDEX games_2022q4_ix001 on games_2022q4(create_dt);
212 CREATE INDEX games_2022q4_ix002 on games_2022q4 using gin(players);
213 CREATE UNIQUE INDEX games_2022q4_pk on games_2022q4(game_id);
214 ALTER TABLE games_2022q4 ADD PRIMARY KEY USING INDEX games_2022q4_pk;
215
216 CREATE TABLE IF NOT EXISTS xonstat.games_2023q1 ( 
217         CHECK ( create_dt >= DATE '2023-01-01' AND create_dt < DATE '2023-04-01' ) 
218 ) INHERITS (games);
219
220 CREATE INDEX games_2023q1_ix001 on games_2023q1(create_dt);
221 CREATE INDEX games_2023q1_ix002 on games_2023q1 using gin(players);
222 CREATE UNIQUE INDEX games_2023q1_pk on games_2023q1(game_id);
223 ALTER TABLE games_2023q1 ADD PRIMARY KEY USING INDEX games_2023q1_pk;
224
225 CREATE TABLE IF NOT EXISTS xonstat.games_2023q2 ( 
226         CHECK ( create_dt >= DATE '2023-04-01' AND create_dt < DATE '2023-07-01' ) 
227 ) INHERITS (games);
228
229 CREATE INDEX games_2023q2_ix001 on games_2023q2(create_dt);
230 CREATE INDEX games_2023q2_ix002 on games_2023q2 using gin(players);
231 CREATE UNIQUE INDEX games_2023q2_pk on games_2023q2(game_id);
232 ALTER TABLE games_2023q2 ADD PRIMARY KEY USING INDEX games_2023q2_pk;
233
234 CREATE TABLE IF NOT EXISTS xonstat.games_2023q3 ( 
235         CHECK ( create_dt >= DATE '2023-07-01' AND create_dt < DATE '2023-10-01' ) 
236 ) INHERITS (games);
237
238 CREATE INDEX games_2023q3_ix001 on games_2023q3(create_dt);
239 CREATE INDEX games_2023q3_ix002 on games_2023q3 using gin(players);
240 CREATE UNIQUE INDEX games_2023q3_pk on games_2023q3(game_id);
241 ALTER TABLE games_2023q3 ADD PRIMARY KEY USING INDEX games_2023q3_pk;
242
243 CREATE TABLE IF NOT EXISTS xonstat.games_2023q4 ( 
244         CHECK ( create_dt >= DATE '2023-10-01' AND create_dt < DATE '2024-01-01' ) 
245 ) INHERITS (games);
246
247 CREATE INDEX games_2023q4_ix001 on games_2023q4(create_dt);
248 CREATE INDEX games_2023q4_ix002 on games_2023q4 using gin(players);
249 CREATE UNIQUE INDEX games_2023q4_pk on games_2023q4(game_id);
250 ALTER TABLE games_2023q4 ADD PRIMARY KEY USING INDEX games_2023q4_pk;
251
252 CREATE TABLE IF NOT EXISTS xonstat.games_2024q1 ( 
253         CHECK ( create_dt >= DATE '2024-01-01' AND create_dt < DATE '2024-04-01' ) 
254 ) INHERITS (games);
255
256 CREATE INDEX games_2024q1_ix001 on games_2024q1(create_dt);
257 CREATE INDEX games_2024q1_ix002 on games_2024q1 using gin(players);
258 CREATE UNIQUE INDEX games_2024q1_pk on games_2024q1(game_id);
259 ALTER TABLE games_2024q1 ADD PRIMARY KEY USING INDEX games_2024q1_pk;
260
261 CREATE TABLE IF NOT EXISTS xonstat.games_2024q2 ( 
262         CHECK ( create_dt >= DATE '2024-04-01' AND create_dt < DATE '2024-07-01' ) 
263 ) INHERITS (games);
264
265 CREATE INDEX games_2024q2_ix001 on games_2024q2(create_dt);
266 CREATE INDEX games_2024q2_ix002 on games_2024q2 using gin(players);
267 CREATE UNIQUE INDEX games_2024q2_pk on games_2024q2(game_id);
268 ALTER TABLE games_2024q2 ADD PRIMARY KEY USING INDEX games_2024q2_pk;
269
270 CREATE TABLE IF NOT EXISTS xonstat.games_2024q3 ( 
271         CHECK ( create_dt >= DATE '2024-07-01' AND create_dt < DATE '2024-10-01' ) 
272 ) INHERITS (games);
273
274 CREATE INDEX games_2024q3_ix001 on games_2024q3(create_dt);
275 CREATE INDEX games_2024q3_ix002 on games_2024q3 using gin(players);
276 CREATE UNIQUE INDEX games_2024q3_pk on games_2024q3(game_id);
277 ALTER TABLE games_2024q3 ADD PRIMARY KEY USING INDEX games_2024q3_pk;
278
279 CREATE TABLE IF NOT EXISTS xonstat.games_2024q4 ( 
280         CHECK ( create_dt >= DATE '2024-10-01' AND create_dt < DATE '2025-01-01' ) 
281 ) INHERITS (games);
282
283 CREATE INDEX games_2024q4_ix001 on games_2024q4(create_dt);
284 CREATE INDEX games_2024q4_ix002 on games_2024q4 using gin(players);
285 CREATE UNIQUE INDEX games_2024q4_pk on games_2024q4(game_id);
286 ALTER TABLE games_2024q4 ADD PRIMARY KEY USING INDEX games_2024q4_pk;
287
288 CREATE TABLE IF NOT EXISTS xonstat.games_2025q1 ( 
289         CHECK ( create_dt >= DATE '2025-01-01' AND create_dt < DATE '2025-04-01' ) 
290 ) INHERITS (games);
291
292 CREATE INDEX games_2025q1_ix001 on games_2025q1(create_dt);
293 CREATE INDEX games_2025q1_ix002 on games_2025q1 using gin(players);
294 CREATE UNIQUE INDEX games_2025q1_pk on games_2025q1(game_id);
295 ALTER TABLE games_2025q1 ADD PRIMARY KEY USING INDEX games_2025q1_pk;
296
297 CREATE TABLE IF NOT EXISTS xonstat.games_2025q2 ( 
298         CHECK ( create_dt >= DATE '2025-04-01' AND create_dt < DATE '2025-07-01' ) 
299 ) INHERITS (games);
300
301 CREATE INDEX games_2025q2_ix001 on games_2025q2(create_dt);
302 CREATE INDEX games_2025q2_ix002 on games_2025q2 using gin(players);
303 CREATE UNIQUE INDEX games_2025q2_pk on games_2025q2(game_id);
304 ALTER TABLE games_2025q2 ADD PRIMARY KEY USING INDEX games_2025q2_pk;
305
306 CREATE TABLE IF NOT EXISTS xonstat.games_2025q3 ( 
307         CHECK ( create_dt >= DATE '2025-07-01' AND create_dt < DATE '2025-10-01' ) 
308 ) INHERITS (games);
309
310 CREATE INDEX games_2025q3_ix001 on games_2025q3(create_dt);
311 CREATE INDEX games_2025q3_ix002 on games_2025q3 using gin(players);
312 CREATE UNIQUE INDEX games_2025q3_pk on games_2025q3(game_id);
313 ALTER TABLE games_2025q3 ADD PRIMARY KEY USING INDEX games_2025q3_pk;
314
315 CREATE TABLE IF NOT EXISTS xonstat.games_2025q4 ( 
316         CHECK ( create_dt >= DATE '2025-10-01' AND create_dt < DATE '2026-01-01' ) 
317 ) INHERITS (games);
318
319 CREATE INDEX games_2025q4_ix001 on games_2025q4(create_dt);
320 CREATE INDEX games_2025q4_ix002 on games_2025q4 using gin(players);
321 CREATE UNIQUE INDEX games_2025q4_pk on games_2025q4(game_id);
322 ALTER TABLE games_2025q4 ADD PRIMARY KEY USING INDEX games_2025q4_pk;
323