]> git.xonotic.org Git - xonotic/xonstatdb.git/blob - tables/games.tab
Partition tables out to 2020, remove old ones.
[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   CONSTRAINT games_pk PRIMARY KEY (game_id),
14   CONSTRAINT games_fk001 FOREIGN KEY (game_type_cd)
15       REFERENCES xonstat.cd_game_type (game_type_cd) MATCH SIMPLE
16       ON UPDATE NO ACTION ON DELETE NO ACTION,
17   CONSTRAINT games_fk002 FOREIGN KEY (server_id)
18       REFERENCES xonstat.servers (server_id) MATCH SIMPLE
19       ON UPDATE NO ACTION ON DELETE NO ACTION,
20   CONSTRAINT games_fk003 FOREIGN KEY (map_id)
21       REFERENCES xonstat.maps (map_id) MATCH SIMPLE
22       ON UPDATE NO ACTION ON DELETE NO ACTION,
23   CONSTRAINT games_uk001 UNIQUE (server_id, match_id)
24 )
25 WITH (
26   OIDS=FALSE
27 );
28 CREATE INDEX games_ix001 on games(create_dt);
29 ALTER TABLE xonstat.games OWNER TO xonstat;
30
31 CREATE TABLE IF NOT EXISTS xonstat.games_2014q1 ( 
32         CHECK ( create_dt >= DATE '2014-01-01' AND create_dt < DATE '2014-04-01' ) 
33 ) INHERITS (games);
34
35 CREATE TABLE IF NOT EXISTS xonstat.games_2014q2 ( 
36         CHECK ( create_dt >= DATE '2014-04-01' AND create_dt < DATE '2014-07-01' ) 
37 ) INHERITS (games);
38
39 CREATE TABLE IF NOT EXISTS xonstat.games_2014q3 ( 
40         CHECK ( create_dt >= DATE '2014-07-01' AND create_dt < DATE '2014-10-01' ) 
41 ) INHERITS (games);
42
43 CREATE TABLE IF NOT EXISTS xonstat.games_2014q4 ( 
44         CHECK ( create_dt >= DATE '2014-10-01' AND create_dt < DATE '2015-01-01' ) 
45 ) INHERITS (games);
46
47 CREATE TABLE IF NOT EXISTS xonstat.games_2015q1 ( 
48         CHECK ( create_dt >= DATE '2015-01-01' AND create_dt < DATE '2015-04-01' ) 
49 ) INHERITS (games);
50
51 CREATE TABLE IF NOT EXISTS xonstat.games_2015q2 ( 
52         CHECK ( create_dt >= DATE '2015-04-01' AND create_dt < DATE '2015-07-01' ) 
53 ) INHERITS (games);
54
55 CREATE TABLE IF NOT EXISTS xonstat.games_2015q3 ( 
56         CHECK ( create_dt >= DATE '2015-07-01' AND create_dt < DATE '2015-10-01' ) 
57 ) INHERITS (games);
58
59 CREATE TABLE IF NOT EXISTS xonstat.games_2015q4 ( 
60         CHECK ( create_dt >= DATE '2015-10-01' AND create_dt < DATE '2016-01-01' ) 
61 ) INHERITS (games);
62
63 CREATE TABLE IF NOT EXISTS xonstat.games_2016q1 ( 
64         CHECK ( create_dt >= DATE '2016-01-01' AND create_dt < DATE '2016-04-01' ) 
65 ) INHERITS (games);
66
67 CREATE TABLE IF NOT EXISTS xonstat.games_2016q2 ( 
68         CHECK ( create_dt >= DATE '2016-04-01' AND create_dt < DATE '2016-07-01' ) 
69 ) INHERITS (games);
70
71 CREATE TABLE IF NOT EXISTS xonstat.games_2016q3 ( 
72         CHECK ( create_dt >= DATE '2016-07-01' AND create_dt < DATE '2016-10-01' ) 
73 ) INHERITS (games);
74
75 CREATE TABLE IF NOT EXISTS xonstat.games_2016q4 ( 
76         CHECK ( create_dt >= DATE '2016-10-01' AND create_dt < DATE '2017-01-01' ) 
77 ) INHERITS (games);
78
79 CREATE TABLE IF NOT EXISTS xonstat.games_2017q1 ( 
80         CHECK ( create_dt >= DATE '2017-01-01' AND create_dt < DATE '2017-04-01' ) 
81 ) INHERITS (games);
82
83 CREATE TABLE IF NOT EXISTS xonstat.games_2017q2 ( 
84         CHECK ( create_dt >= DATE '2017-04-01' AND create_dt < DATE '2017-07-01' ) 
85 ) INHERITS (games);
86
87 CREATE TABLE IF NOT EXISTS xonstat.games_2017q3 ( 
88         CHECK ( create_dt >= DATE '2017-07-01' AND create_dt < DATE '2017-10-01' ) 
89 ) INHERITS (games);
90
91 CREATE TABLE IF NOT EXISTS xonstat.games_2017q4 ( 
92         CHECK ( create_dt >= DATE '2017-10-01' AND create_dt < DATE '2018-01-01' ) 
93 ) INHERITS (games);
94
95 CREATE TABLE IF NOT EXISTS xonstat.games_2018q1 ( 
96         CHECK ( create_dt >= DATE '2018-01-01' AND create_dt < DATE '2018-04-01' ) 
97 ) INHERITS (games);
98
99 CREATE TABLE IF NOT EXISTS xonstat.games_2018q2 ( 
100         CHECK ( create_dt >= DATE '2018-04-01' AND create_dt < DATE '2018-07-01' ) 
101 ) INHERITS (games);
102
103 CREATE TABLE IF NOT EXISTS xonstat.games_2018q3 ( 
104         CHECK ( create_dt >= DATE '2018-07-01' AND create_dt < DATE '2018-10-01' ) 
105 ) INHERITS (games);
106
107 CREATE TABLE IF NOT EXISTS xonstat.games_2018q4 ( 
108         CHECK ( create_dt >= DATE '2018-10-01' AND create_dt < DATE '2019-01-01' ) 
109 ) INHERITS (games);
110
111 CREATE TABLE IF NOT EXISTS xonstat.games_2019q1 ( 
112         CHECK ( create_dt >= DATE '2019-01-01' AND create_dt < DATE '2019-04-01' ) 
113 ) INHERITS (games);
114
115 CREATE TABLE IF NOT EXISTS xonstat.games_2019q2 ( 
116         CHECK ( create_dt >= DATE '2019-04-01' AND create_dt < DATE '2019-07-01' ) 
117 ) INHERITS (games);
118
119 CREATE TABLE IF NOT EXISTS xonstat.games_2019q3 ( 
120         CHECK ( create_dt >= DATE '2019-07-01' AND create_dt < DATE '2019-10-01' ) 
121 ) INHERITS (games);
122
123 CREATE TABLE IF NOT EXISTS xonstat.games_2019q4 ( 
124         CHECK ( create_dt >= DATE '2019-10-01' AND create_dt < DATE '2020-01-01' ) 
125 ) INHERITS (games);
126
127 CREATE TABLE IF NOT EXISTS xonstat.games_2020q1 ( 
128         CHECK ( create_dt >= DATE '2020-01-01' AND create_dt < DATE '2020-04-01' ) 
129 ) INHERITS (games);
130
131 CREATE TABLE IF NOT EXISTS xonstat.games_2020q2 ( 
132         CHECK ( create_dt >= DATE '2020-04-01' AND create_dt < DATE '2020-07-01' ) 
133 ) INHERITS (games);
134
135 CREATE TABLE IF NOT EXISTS xonstat.games_2020q3 ( 
136         CHECK ( create_dt >= DATE '2020-07-01' AND create_dt < DATE '2020-10-01' ) 
137 ) INHERITS (games);
138
139 CREATE TABLE IF NOT EXISTS xonstat.games_2020q4 ( 
140         CHECK ( create_dt >= DATE '2020-10-01' AND create_dt < DATE '2021-01-01' ) 
141 ) INHERITS (games);
142