player_weapon_stats_id bigserial NOT NULL,
player_id integer NOT NULL,
game_id bigint NOT NULL,
- weapon_cd character varying(3) NOT NULL,
- actual integer NOT NULL,
- max integer NOT NULL,
- frags integer NOT NULL,
- create_dt timestamp with time zone NOT NULL DEFAULT now(),
+ player_game_stat_id bigint NOT NULL,
+ weapon_cd character varying(15) NOT NULL,
+ actual integer NOT NULL default 0,
+ max integer NOT NULL default 0,
+ hit integer NOT NULL default 0,
+ fired integer NOT NULL default 0,
+ frags integer NOT NULL default 0,
+ create_dt timestamp without time zone NOT NULL DEFAULT (current_timestamp at time zone 'UTC'),
CONSTRAINT player_weapon_stats_pk PRIMARY KEY (player_weapon_stats_id),
CONSTRAINT player_weapon_stats_fk001 FOREIGN KEY (player_id)
REFERENCES xonstat.players (player_id) MATCH SIMPLE
CONSTRAINT player_weapon_stats_fk003 FOREIGN KEY (weapon_cd)
REFERENCES xonstat.cd_weapon (weapon_cd) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION,
- CONSTRAINT player_weapon_stats_uk001 UNIQUE (player_id, game_id, weapon_cd)
+ CONSTRAINT player_weapon_stats_fk004 FOREIGN KEY (player_game_stat_id)
+ REFERENCES xonstat.player_game_stats (player_game_stat_id) MATCH SIMPLE
+ ON UPDATE NO ACTION ON DELETE NO ACTION
)
WITH (
OIDS=FALSE
);
+
+CREATE INDEX player_weap_stats_ix01 on player_weapon_stats(create_dt);
+CREATE INDEX player_weap_stats_ix02 on player_weapon_stats(game_id);
+CREATE INDEX player_weap_stats_ix03 on player_weapon_stats(player_id);
+
ALTER TABLE xonstat.player_weapon_stats OWNER TO xonstat;
+
+CREATE TABLE IF NOT EXISTS xonstat.player_weapon_stats_2014q1 (
+ CHECK ( create_dt >= DATE '2014-01-01' AND create_dt < DATE '2014-04-01' )
+) INHERITS (player_weapon_stats);
+
+CREATE INDEX player_weapon_stats_2014q1_ix001 on player_weapon_stats_2014q1(create_dt);
+CREATE INDEX player_weapon_stats_2014q1_ix002 on player_weapon_stats_2014q1(game_id);
+CREATE INDEX player_weapon_stats_2014q1_ix003 on player_weapon_stats_2014q1(player_id);
+
+CREATE TABLE IF NOT EXISTS xonstat.player_weapon_stats_2014q2 (
+ CHECK ( create_dt >= DATE '2014-04-01' AND create_dt < DATE '2014-07-01' )
+) INHERITS (player_weapon_stats);
+
+CREATE INDEX player_weapon_stats_2014q2_ix001 on player_weapon_stats_2014q2(create_dt);
+CREATE INDEX player_weapon_stats_2014q2_ix002 on player_weapon_stats_2014q2(game_id);
+CREATE INDEX player_weapon_stats_2014q2_ix003 on player_weapon_stats_2014q2(player_id);
+
+CREATE TABLE IF NOT EXISTS xonstat.player_weapon_stats_2014q3 (
+ CHECK ( create_dt >= DATE '2014-07-01' AND create_dt < DATE '2014-10-01' )
+) INHERITS (player_weapon_stats);
+
+CREATE INDEX player_weapon_stats_2014q3_ix001 on player_weapon_stats_2014q3(create_dt);
+CREATE INDEX player_weapon_stats_2014q3_ix002 on player_weapon_stats_2014q3(game_id);
+CREATE INDEX player_weapon_stats_2014q3_ix003 on player_weapon_stats_2014q3(player_id);
+
+CREATE TABLE IF NOT EXISTS xonstat.player_weapon_stats_2014q4 (
+ CHECK ( create_dt >= DATE '2014-10-01' AND create_dt < DATE '2015-01-01' )
+) INHERITS (player_weapon_stats);
+
+CREATE INDEX player_weapon_stats_2014q4_ix001 on player_weapon_stats_2014q4(create_dt);
+CREATE INDEX player_weapon_stats_2014q4_ix002 on player_weapon_stats_2014q4(game_id);
+CREATE INDEX player_weapon_stats_2014q4_ix003 on player_weapon_stats_2014q4(player_id);
+
+CREATE TABLE IF NOT EXISTS xonstat.player_weapon_stats_2015q1 (
+ CHECK ( create_dt >= DATE '2015-01-01' AND create_dt < DATE '2015-04-01' )
+) INHERITS (player_weapon_stats);
+
+CREATE INDEX player_weapon_stats_2015q1_ix001 on player_weapon_stats_2015q1(create_dt);
+CREATE INDEX player_weapon_stats_2015q1_ix002 on player_weapon_stats_2015q1(game_id);
+CREATE INDEX player_weapon_stats_2015q1_ix003 on player_weapon_stats_2015q1(player_id);
+
+CREATE TABLE IF NOT EXISTS xonstat.player_weapon_stats_2015q2 (
+ CHECK ( create_dt >= DATE '2015-04-01' AND create_dt < DATE '2015-07-01' )
+) INHERITS (player_weapon_stats);
+
+CREATE INDEX player_weapon_stats_2015q2_ix001 on player_weapon_stats_2015q2(create_dt);
+CREATE INDEX player_weapon_stats_2015q2_ix002 on player_weapon_stats_2015q2(game_id);
+CREATE INDEX player_weapon_stats_2015q2_ix003 on player_weapon_stats_2015q2(player_id);
+
+CREATE TABLE IF NOT EXISTS xonstat.player_weapon_stats_2015q3 (
+ CHECK ( create_dt >= DATE '2015-07-01' AND create_dt < DATE '2015-10-01' )
+) INHERITS (player_weapon_stats);
+
+CREATE INDEX player_weapon_stats_2015q3_ix001 on player_weapon_stats_2015q3(create_dt);
+CREATE INDEX player_weapon_stats_2015q3_ix002 on player_weapon_stats_2015q3(game_id);
+CREATE INDEX player_weapon_stats_2015q3_ix003 on player_weapon_stats_2015q3(player_id);
+
+CREATE TABLE IF NOT EXISTS xonstat.player_weapon_stats_2015q4 (
+ CHECK ( create_dt >= DATE '2015-10-01' AND create_dt < DATE '2016-01-01' )
+) INHERITS (player_weapon_stats);
+
+CREATE INDEX player_weapon_stats_2015q4_ix001 on player_weapon_stats_2015q4(create_dt);
+CREATE INDEX player_weapon_stats_2015q4_ix002 on player_weapon_stats_2015q4(game_id);
+CREATE INDEX player_weapon_stats_2015q4_ix003 on player_weapon_stats_2015q4(player_id);
+
+CREATE TABLE IF NOT EXISTS xonstat.player_weapon_stats_2016q1 (
+ CHECK ( create_dt >= DATE '2016-01-01' AND create_dt < DATE '2016-04-01' )
+) INHERITS (player_weapon_stats);
+
+CREATE INDEX player_weapon_stats_2016q1_ix001 on player_weapon_stats_2016q1(create_dt);
+CREATE INDEX player_weapon_stats_2016q1_ix002 on player_weapon_stats_2016q1(game_id);
+CREATE INDEX player_weapon_stats_2016q1_ix003 on player_weapon_stats_2016q1(player_id);
+
+CREATE TABLE IF NOT EXISTS xonstat.player_weapon_stats_2016q2 (
+ CHECK ( create_dt >= DATE '2016-04-01' AND create_dt < DATE '2016-07-01' )
+) INHERITS (player_weapon_stats);
+
+CREATE INDEX player_weapon_stats_2016q2_ix001 on player_weapon_stats_2016q2(create_dt);
+CREATE INDEX player_weapon_stats_2016q2_ix002 on player_weapon_stats_2016q2(game_id);
+CREATE INDEX player_weapon_stats_2016q2_ix003 on player_weapon_stats_2016q2(player_id);
+
+CREATE TABLE IF NOT EXISTS xonstat.player_weapon_stats_2016q3 (
+ CHECK ( create_dt >= DATE '2016-07-01' AND create_dt < DATE '2016-10-01' )
+) INHERITS (player_weapon_stats);
+
+CREATE INDEX player_weapon_stats_2016q3_ix001 on player_weapon_stats_2016q3(create_dt);
+CREATE INDEX player_weapon_stats_2016q3_ix002 on player_weapon_stats_2016q3(game_id);
+CREATE INDEX player_weapon_stats_2016q3_ix003 on player_weapon_stats_2016q3(player_id);
+
+CREATE TABLE IF NOT EXISTS xonstat.player_weapon_stats_2016q4 (
+ CHECK ( create_dt >= DATE '2016-10-01' AND create_dt < DATE '2017-01-01' )
+) INHERITS (player_weapon_stats);
+
+CREATE INDEX player_weapon_stats_2016q4_ix001 on player_weapon_stats_2016q4(create_dt);
+CREATE INDEX player_weapon_stats_2016q4_ix002 on player_weapon_stats_2016q4(game_id);
+CREATE INDEX player_weapon_stats_2016q4_ix003 on player_weapon_stats_2016q4(player_id);
+
+CREATE TABLE IF NOT EXISTS xonstat.player_weapon_stats_2017q1 (
+ CHECK ( create_dt >= DATE '2017-01-01' AND create_dt < DATE '2017-04-01' )
+) INHERITS (player_weapon_stats);
+
+CREATE INDEX player_weapon_stats_2017q1_ix001 on player_weapon_stats_2017q1(create_dt);
+CREATE INDEX player_weapon_stats_2017q1_ix002 on player_weapon_stats_2017q1(game_id);
+CREATE INDEX player_weapon_stats_2017q1_ix003 on player_weapon_stats_2017q1(player_id);
+
+CREATE TABLE IF NOT EXISTS xonstat.player_weapon_stats_2017q2 (
+ CHECK ( create_dt >= DATE '2017-04-01' AND create_dt < DATE '2017-07-01' )
+) INHERITS (player_weapon_stats);
+
+CREATE INDEX player_weapon_stats_2017q2_ix001 on player_weapon_stats_2017q2(create_dt);
+CREATE INDEX player_weapon_stats_2017q2_ix002 on player_weapon_stats_2017q2(game_id);
+CREATE INDEX player_weapon_stats_2017q2_ix003 on player_weapon_stats_2017q2(player_id);
+
+CREATE TABLE IF NOT EXISTS xonstat.player_weapon_stats_2017q3 (
+ CHECK ( create_dt >= DATE '2017-07-01' AND create_dt < DATE '2017-10-01' )
+) INHERITS (player_weapon_stats);
+
+CREATE INDEX player_weapon_stats_2017q3_ix001 on player_weapon_stats_2017q3(create_dt);
+CREATE INDEX player_weapon_stats_2017q3_ix002 on player_weapon_stats_2017q3(game_id);
+CREATE INDEX player_weapon_stats_2017q3_ix003 on player_weapon_stats_2017q3(player_id);
+
+CREATE TABLE IF NOT EXISTS xonstat.player_weapon_stats_2017q4 (
+ CHECK ( create_dt >= DATE '2017-10-01' AND create_dt < DATE '2018-01-01' )
+) INHERITS (player_weapon_stats);
+
+CREATE INDEX player_weapon_stats_2017q4_ix001 on player_weapon_stats_2017q4(create_dt);
+CREATE INDEX player_weapon_stats_2017q4_ix002 on player_weapon_stats_2017q4(game_id);
+CREATE INDEX player_weapon_stats_2017q4_ix003 on player_weapon_stats_2017q4(player_id);
+
+CREATE TABLE IF NOT EXISTS xonstat.player_weapon_stats_2018q1 (
+ CHECK ( create_dt >= DATE '2018-01-01' AND create_dt < DATE '2018-04-01' )
+) INHERITS (player_weapon_stats);
+
+CREATE INDEX player_weapon_stats_2018q1_ix001 on player_weapon_stats_2018q1(create_dt);
+CREATE INDEX player_weapon_stats_2018q1_ix002 on player_weapon_stats_2018q1(game_id);
+CREATE INDEX player_weapon_stats_2018q1_ix003 on player_weapon_stats_2018q1(player_id);
+
+CREATE TABLE IF NOT EXISTS xonstat.player_weapon_stats_2018q2 (
+ CHECK ( create_dt >= DATE '2018-04-01' AND create_dt < DATE '2018-07-01' )
+) INHERITS (player_weapon_stats);
+
+CREATE INDEX player_weapon_stats_2018q2_ix001 on player_weapon_stats_2018q2(create_dt);
+CREATE INDEX player_weapon_stats_2018q2_ix002 on player_weapon_stats_2018q2(game_id);
+CREATE INDEX player_weapon_stats_2018q2_ix003 on player_weapon_stats_2018q2(player_id);
+
+CREATE TABLE IF NOT EXISTS xonstat.player_weapon_stats_2018q3 (
+ CHECK ( create_dt >= DATE '2018-07-01' AND create_dt < DATE '2018-10-01' )
+) INHERITS (player_weapon_stats);
+
+CREATE INDEX player_weapon_stats_2018q3_ix001 on player_weapon_stats_2018q3(create_dt);
+CREATE INDEX player_weapon_stats_2018q3_ix002 on player_weapon_stats_2018q3(game_id);
+CREATE INDEX player_weapon_stats_2018q3_ix003 on player_weapon_stats_2018q3(player_id);
+
+CREATE TABLE IF NOT EXISTS xonstat.player_weapon_stats_2018q4 (
+ CHECK ( create_dt >= DATE '2018-10-01' AND create_dt < DATE '2019-01-01' )
+) INHERITS (player_weapon_stats);
+
+CREATE INDEX player_weapon_stats_2018q4_ix001 on player_weapon_stats_2018q4(create_dt);
+CREATE INDEX player_weapon_stats_2018q4_ix002 on player_weapon_stats_2018q4(game_id);
+CREATE INDEX player_weapon_stats_2018q4_ix003 on player_weapon_stats_2018q4(player_id);
+
+CREATE TABLE IF NOT EXISTS xonstat.player_weapon_stats_2019q1 (
+ CHECK ( create_dt >= DATE '2019-01-01' AND create_dt < DATE '2019-04-01' )
+) INHERITS (player_weapon_stats);
+
+CREATE INDEX player_weapon_stats_2019q1_ix001 on player_weapon_stats_2019q1(create_dt);
+CREATE INDEX player_weapon_stats_2019q1_ix002 on player_weapon_stats_2019q1(game_id);
+CREATE INDEX player_weapon_stats_2019q1_ix003 on player_weapon_stats_2019q1(player_id);
+
+CREATE TABLE IF NOT EXISTS xonstat.player_weapon_stats_2019q2 (
+ CHECK ( create_dt >= DATE '2019-04-01' AND create_dt < DATE '2019-07-01' )
+) INHERITS (player_weapon_stats);
+
+CREATE INDEX player_weapon_stats_2019q2_ix001 on player_weapon_stats_2019q2(create_dt);
+CREATE INDEX player_weapon_stats_2019q2_ix002 on player_weapon_stats_2019q2(game_id);
+CREATE INDEX player_weapon_stats_2019q2_ix003 on player_weapon_stats_2019q2(player_id);
+
+CREATE TABLE IF NOT EXISTS xonstat.player_weapon_stats_2019q3 (
+ CHECK ( create_dt >= DATE '2019-07-01' AND create_dt < DATE '2019-10-01' )
+) INHERITS (player_weapon_stats);
+
+CREATE INDEX player_weapon_stats_2019q3_ix001 on player_weapon_stats_2019q3(create_dt);
+CREATE INDEX player_weapon_stats_2019q3_ix002 on player_weapon_stats_2019q3(game_id);
+CREATE INDEX player_weapon_stats_2019q3_ix003 on player_weapon_stats_2019q3(player_id);
+
+CREATE TABLE IF NOT EXISTS xonstat.player_weapon_stats_2019q4 (
+ CHECK ( create_dt >= DATE '2019-10-01' AND create_dt < DATE '2020-01-01' )
+) INHERITS (player_weapon_stats);
+
+CREATE INDEX player_weapon_stats_2019q4_ix001 on player_weapon_stats_2019q4(create_dt);
+CREATE INDEX player_weapon_stats_2019q4_ix002 on player_weapon_stats_2019q4(game_id);
+CREATE INDEX player_weapon_stats_2019q4_ix003 on player_weapon_stats_2019q4(player_id);
+
+CREATE TABLE IF NOT EXISTS xonstat.player_weapon_stats_2020q1 (
+ CHECK ( create_dt >= DATE '2020-01-01' AND create_dt < DATE '2020-04-01' )
+) INHERITS (player_weapon_stats);
+
+CREATE INDEX player_weapon_stats_2020q1_ix001 on player_weapon_stats_2020q1(create_dt);
+CREATE INDEX player_weapon_stats_2020q1_ix002 on player_weapon_stats_2020q1(game_id);
+CREATE INDEX player_weapon_stats_2020q1_ix003 on player_weapon_stats_2020q1(player_id);
+
+CREATE TABLE IF NOT EXISTS xonstat.player_weapon_stats_2020q2 (
+ CHECK ( create_dt >= DATE '2020-04-01' AND create_dt < DATE '2020-07-01' )
+) INHERITS (player_weapon_stats);
+
+CREATE INDEX player_weapon_stats_2020q2_ix001 on player_weapon_stats_2020q2(create_dt);
+CREATE INDEX player_weapon_stats_2020q2_ix002 on player_weapon_stats_2020q2(game_id);
+CREATE INDEX player_weapon_stats_2020q2_ix003 on player_weapon_stats_2020q2(player_id);
+
+CREATE TABLE IF NOT EXISTS xonstat.player_weapon_stats_2020q3 (
+ CHECK ( create_dt >= DATE '2020-07-01' AND create_dt < DATE '2020-10-01' )
+) INHERITS (player_weapon_stats);
+
+CREATE INDEX player_weapon_stats_2020q3_ix001 on player_weapon_stats_2020q3(create_dt);
+CREATE INDEX player_weapon_stats_2020q3_ix002 on player_weapon_stats_2020q3(game_id);
+CREATE INDEX player_weapon_stats_2020q3_ix003 on player_weapon_stats_2020q3(player_id);
+
+CREATE TABLE IF NOT EXISTS xonstat.player_weapon_stats_2020q4 (
+ CHECK ( create_dt >= DATE '2020-10-01' AND create_dt < DATE '2021-01-01' )
+) INHERITS (player_weapon_stats);
+
+CREATE INDEX player_weapon_stats_2020q4_ix001 on player_weapon_stats_2020q4(create_dt);
+CREATE INDEX player_weapon_stats_2020q4_ix002 on player_weapon_stats_2020q4(game_id);
+CREATE INDEX player_weapon_stats_2020q4_ix003 on player_weapon_stats_2020q4(player_id);