Add indexes on the game_id field.
[xonotic/xonstatdb.git] / tables / player_game_frag_matrix.tab
1 CREATE TABLE xonstat.player_game_frag_matrix
2 (
3   game_id bigint NOT NULL,
4   player_game_stat_id bigint NOT NULL,
5   player_id integer NOT NULL,
6   player_index smallint NOT NULL,
7   matrix json NOT NULL,
8   create_dt timestamp without time zone NOT NULL DEFAULT (current_timestamp at time zone 'UTC'),
9   CONSTRAINT player_game_frag_matrix_pk PRIMARY KEY (game_id, player_game_stat_id),
10   CONSTRAINT player_game_frag_matrix_fk001 FOREIGN KEY (game_id)
11       REFERENCES xonstat.games (game_id) MATCH SIMPLE
12       ON UPDATE NO ACTION ON DELETE NO ACTION,
13   CONSTRAINT player_game_frag_matrix_fk002 FOREIGN KEY (player_game_stat_id)
14       REFERENCES xonstat.player_game_stats (player_game_stat_id) MATCH SIMPLE
15       ON UPDATE NO ACTION ON DELETE NO ACTION,
16   CONSTRAINT player_game_frag_matrix_fk003 FOREIGN KEY (player_id)
17       REFERENCES xonstat.players (player_id) MATCH SIMPLE
18       ON UPDATE NO ACTION ON DELETE NO ACTION
19 )
20 WITH (
21   OIDS=FALSE
22 );
23
24 CREATE INDEX player_game_frag_matrix_ix01 on player_game_frag_matrix(create_dt);
25 CREATE INDEX player_game_frag_matrix_ix02 on player_game_frag_matrix(game_id);
26
27 ALTER TABLE xonstat.player_game_frag_matrix OWNER TO xonstat;
28
29 CREATE TABLE IF NOT EXISTS xonstat.player_game_frag_matrix_2017q3 ( 
30         CHECK ( create_dt >= DATE '2017-07-01' AND create_dt < DATE '2017-10-01' ) 
31 ) INHERITS (player_game_frag_matrix);
32
33 CREATE INDEX player_game_frag_matrix_2017q3_ix001 on player_game_frag_matrix_2017q3(create_dt);
34 CREATE INDEX player_game_frag_matrix_2017q3_ix002 on player_game_frag_matrix_2017q3(game_id);
35
36 CREATE TABLE IF NOT EXISTS xonstat.player_game_frag_matrix_2017q4 ( 
37         CHECK ( create_dt >= DATE '2017-10-01' AND create_dt < DATE '2018-01-01' ) 
38 ) INHERITS (player_game_frag_matrix);
39
40 CREATE INDEX player_game_frag_matrix_2017q4_ix001 on player_game_frag_matrix_2017q4(create_dt);
41 CREATE INDEX player_game_frag_matrix_2017q4_ix002 on player_game_frag_matrix_2017q4(game_id);
42
43 CREATE TABLE IF NOT EXISTS xonstat.player_game_frag_matrix_2018q1 ( 
44         CHECK ( create_dt >= DATE '2018-01-01' AND create_dt < DATE '2018-04-01' ) 
45 ) INHERITS (player_game_frag_matrix);
46
47 CREATE INDEX player_game_frag_matrix_2018q1_ix001 on player_game_frag_matrix_2018q1(create_dt);
48 CREATE INDEX player_game_frag_matrix_2018q1_ix002 on player_game_frag_matrix_2018q1(game_id);
49
50 CREATE TABLE IF NOT EXISTS xonstat.player_game_frag_matrix_2018q2 ( 
51         CHECK ( create_dt >= DATE '2018-04-01' AND create_dt < DATE '2018-07-01' ) 
52 ) INHERITS (player_game_frag_matrix);
53
54 CREATE INDEX player_game_frag_matrix_2018q2_ix001 on player_game_frag_matrix_2018q2(create_dt);
55 CREATE INDEX player_game_frag_matrix_2018q2_ix002 on player_game_frag_matrix_2018q2(game_id);
56
57 CREATE TABLE IF NOT EXISTS xonstat.player_game_frag_matrix_2018q3 ( 
58         CHECK ( create_dt >= DATE '2018-07-01' AND create_dt < DATE '2018-10-01' ) 
59 ) INHERITS (player_game_frag_matrix);
60
61 CREATE INDEX player_game_frag_matrix_2018q3_ix001 on player_game_frag_matrix_2018q3(create_dt);
62 CREATE INDEX player_game_frag_matrix_2018q3_ix002 on player_game_frag_matrix_2018q3(game_id);
63
64 CREATE TABLE IF NOT EXISTS xonstat.player_game_frag_matrix_2018q4 ( 
65         CHECK ( create_dt >= DATE '2018-10-01' AND create_dt < DATE '2019-01-01' ) 
66 ) INHERITS (player_game_frag_matrix);
67
68 CREATE INDEX player_game_frag_matrix_2018q4_ix001 on player_game_frag_matrix_2018q4(create_dt);
69 CREATE INDEX player_game_frag_matrix_2018q4_ix002 on player_game_frag_matrix_2018q4(game_id);
70
71 CREATE TABLE IF NOT EXISTS xonstat.player_game_frag_matrix_2019q1 ( 
72         CHECK ( create_dt >= DATE '2019-01-01' AND create_dt < DATE '2019-04-01' ) 
73 ) INHERITS (player_game_frag_matrix);
74
75 CREATE INDEX player_game_frag_matrix_2019q1_ix001 on player_game_frag_matrix_2019q1(create_dt);
76 CREATE INDEX player_game_frag_matrix_2019q1_ix002 on player_game_frag_matrix_2019q1(game_id);
77
78 CREATE TABLE IF NOT EXISTS xonstat.player_game_frag_matrix_2019q2 ( 
79         CHECK ( create_dt >= DATE '2019-04-01' AND create_dt < DATE '2019-07-01' ) 
80 ) INHERITS (player_game_frag_matrix);
81
82 CREATE INDEX player_game_frag_matrix_2019q2_ix001 on player_game_frag_matrix_2019q2(create_dt);
83 CREATE INDEX player_game_frag_matrix_2019q2_ix002 on player_game_frag_matrix_2019q2(game_id);
84
85 CREATE TABLE IF NOT EXISTS xonstat.player_game_frag_matrix_2019q3 ( 
86         CHECK ( create_dt >= DATE '2019-07-01' AND create_dt < DATE '2019-10-01' ) 
87 ) INHERITS (player_game_frag_matrix);
88
89 CREATE INDEX player_game_frag_matrix_2019q3_ix001 on player_game_frag_matrix_2019q3(create_dt);
90 CREATE INDEX player_game_frag_matrix_2019q3_ix002 on player_game_frag_matrix_2019q3(game_id);
91
92 CREATE TABLE IF NOT EXISTS xonstat.player_game_frag_matrix_2019q4 ( 
93         CHECK ( create_dt >= DATE '2019-10-01' AND create_dt < DATE '2020-01-01' ) 
94 ) INHERITS (player_game_frag_matrix);
95
96 CREATE INDEX player_game_frag_matrix_2019q4_ix001 on player_game_frag_matrix_2019q4(create_dt);
97 CREATE INDEX player_game_frag_matrix_2019q4_ix002 on player_game_frag_matrix_2019q4(game_id);
98
99 CREATE TABLE IF NOT EXISTS xonstat.player_game_frag_matrix_2020q1 ( 
100         CHECK ( create_dt >= DATE '2020-01-01' AND create_dt < DATE '2020-04-01' ) 
101 ) INHERITS (player_game_frag_matrix);
102
103 CREATE INDEX player_game_frag_matrix_2020q1_ix001 on player_game_frag_matrix_2020q1(create_dt);
104 CREATE INDEX player_game_frag_matrix_2020q1_ix002 on player_game_frag_matrix_2020q1(game_id);
105
106 CREATE TABLE IF NOT EXISTS xonstat.player_game_frag_matrix_2020q2 ( 
107         CHECK ( create_dt >= DATE '2020-04-01' AND create_dt < DATE '2020-07-01' ) 
108 ) INHERITS (player_game_frag_matrix);
109
110 CREATE INDEX player_game_frag_matrix_2020q2_ix001 on player_game_frag_matrix_2020q2(create_dt);
111 CREATE INDEX player_game_frag_matrix_2020q2_ix002 on player_game_frag_matrix_2020q2(game_id);
112
113 CREATE TABLE IF NOT EXISTS xonstat.player_game_frag_matrix_2020q3 ( 
114         CHECK ( create_dt >= DATE '2020-07-01' AND create_dt < DATE '2020-10-01' ) 
115 ) INHERITS (player_game_frag_matrix);
116
117 CREATE INDEX player_game_frag_matrix_2020q3_ix001 on player_game_frag_matrix_2020q3(create_dt);
118 CREATE INDEX player_game_frag_matrix_2020q3_ix002 on player_game_frag_matrix_2020q3(game_id);
119
120 CREATE TABLE IF NOT EXISTS xonstat.player_game_frag_matrix_2020q4 ( 
121         CHECK ( create_dt >= DATE '2020-10-01' AND create_dt < DATE '2021-01-01' ) 
122 ) INHERITS (player_game_frag_matrix);
123
124 CREATE INDEX player_game_frag_matrix_2020q4_ix001 on player_game_frag_matrix_2020q4(create_dt);
125 CREATE INDEX player_game_frag_matrix_2020q4_ix002 on player_game_frag_matrix_2020q4(game_id);