]> git.xonotic.org Git - xonotic/xonstatdb.git/blobdiff - triggers/player_weapon_stats_ins_trg.sql
Add partitions through 2025.
[xonotic/xonstatdb.git] / triggers / player_weapon_stats_ins_trg.sql
index e0c256ee1a20d8aa5631ee544ee3b9b30a81d22b..f1096229ec641dd9137ec2754ea4e15eaf51c030 100644 (file)
@@ -1,55 +1,7 @@
 CREATE OR REPLACE FUNCTION player_weapon_stats_ins()
 RETURNS TRIGGER AS $$
 BEGIN
-       IF (NEW.create_dt >= DATE '2014-01-01' AND NEW.create_dt < DATE '2014-04-01') THEN
-               INSERT INTO player_weapon_stats_2014Q1 VALUES (NEW.*);
-       ELSIF (NEW.create_dt >= DATE '2014-04-01' AND NEW.create_dt < DATE '2014-07-01') THEN
-               INSERT INTO player_weapon_stats_2014Q2 VALUES (NEW.*);
-       ELSIF (NEW.create_dt >= DATE '2014-07-01' AND NEW.create_dt < DATE '2014-10-01') THEN
-               INSERT INTO player_weapon_stats_2014Q3 VALUES (NEW.*);
-       ELSIF (NEW.create_dt >= DATE '2014-10-01' AND NEW.create_dt < DATE '2015-01-01') THEN
-               INSERT INTO player_weapon_stats_2014Q4 VALUES (NEW.*);
-       ELSIF (NEW.create_dt >= DATE '2015-01-01' AND NEW.create_dt < DATE '2015-04-01') THEN
-               INSERT INTO player_weapon_stats_2015Q1 VALUES (NEW.*);
-       ELSIF (NEW.create_dt >= DATE '2015-04-01' AND NEW.create_dt < DATE '2015-07-01') THEN
-               INSERT INTO player_weapon_stats_2015Q2 VALUES (NEW.*);
-       ELSIF (NEW.create_dt >= DATE '2015-07-01' AND NEW.create_dt < DATE '2015-10-01') THEN
-               INSERT INTO player_weapon_stats_2015Q3 VALUES (NEW.*);
-       ELSIF (NEW.create_dt >= DATE '2015-10-01' AND NEW.create_dt < DATE '2016-01-01') THEN
-               INSERT INTO player_weapon_stats_2015Q4 VALUES (NEW.*);
-       ELSIF (NEW.create_dt >= DATE '2016-01-01' AND NEW.create_dt < DATE '2016-04-01') THEN
-               INSERT INTO player_weapon_stats_2016Q1 VALUES (NEW.*);
-       ELSIF (NEW.create_dt >= DATE '2016-04-01' AND NEW.create_dt < DATE '2016-07-01') THEN
-               INSERT INTO player_weapon_stats_2016Q2 VALUES (NEW.*);
-       ELSIF (NEW.create_dt >= DATE '2016-07-01' AND NEW.create_dt < DATE '2016-10-01') THEN
-               INSERT INTO player_weapon_stats_2016Q3 VALUES (NEW.*);
-       ELSIF (NEW.create_dt >= DATE '2016-10-01' AND NEW.create_dt < DATE '2017-01-01') THEN
-               INSERT INTO player_weapon_stats_2016Q4 VALUES (NEW.*);
-       ELSIF (NEW.create_dt >= DATE '2017-01-01' AND NEW.create_dt < DATE '2017-04-01') THEN
-               INSERT INTO player_weapon_stats_2017Q1 VALUES (NEW.*);
-       ELSIF (NEW.create_dt >= DATE '2017-04-01' AND NEW.create_dt < DATE '2017-07-01') THEN
-               INSERT INTO player_weapon_stats_2017Q2 VALUES (NEW.*);
-       ELSIF (NEW.create_dt >= DATE '2017-07-01' AND NEW.create_dt < DATE '2017-10-01') THEN
-               INSERT INTO player_weapon_stats_2017Q3 VALUES (NEW.*);
-       ELSIF (NEW.create_dt >= DATE '2017-10-01' AND NEW.create_dt < DATE '2018-01-01') THEN
-               INSERT INTO player_weapon_stats_2017Q4 VALUES (NEW.*);
-       ELSIF (NEW.create_dt >= DATE '2018-01-01' AND NEW.create_dt < DATE '2018-04-01') THEN
-               INSERT INTO player_weapon_stats_2018Q1 VALUES (NEW.*);
-       ELSIF (NEW.create_dt >= DATE '2018-04-01' AND NEW.create_dt < DATE '2018-07-01') THEN
-               INSERT INTO player_weapon_stats_2018Q2 VALUES (NEW.*);
-       ELSIF (NEW.create_dt >= DATE '2018-07-01' AND NEW.create_dt < DATE '2018-10-01') THEN
-               INSERT INTO player_weapon_stats_2018Q3 VALUES (NEW.*);
-       ELSIF (NEW.create_dt >= DATE '2018-10-01' AND NEW.create_dt < DATE '2019-01-01') THEN
-               INSERT INTO player_weapon_stats_2018Q4 VALUES (NEW.*);
-       ELSIF (NEW.create_dt >= DATE '2019-01-01' AND NEW.create_dt < DATE '2019-04-01') THEN
-               INSERT INTO player_weapon_stats_2019Q1 VALUES (NEW.*);
-       ELSIF (NEW.create_dt >= DATE '2019-04-01' AND NEW.create_dt < DATE '2019-07-01') THEN
-               INSERT INTO player_weapon_stats_2019Q2 VALUES (NEW.*);
-       ELSIF (NEW.create_dt >= DATE '2019-07-01' AND NEW.create_dt < DATE '2019-10-01') THEN
-               INSERT INTO player_weapon_stats_2019Q3 VALUES (NEW.*);
-       ELSIF (NEW.create_dt >= DATE '2019-10-01' AND NEW.create_dt < DATE '2020-01-01') THEN
-               INSERT INTO player_weapon_stats_2019Q4 VALUES (NEW.*);
-       ELSIF (NEW.create_dt >= DATE '2020-01-01' AND NEW.create_dt < DATE '2020-04-01') THEN
+       IF (NEW.create_dt >= DATE '2020-01-01' AND NEW.create_dt < DATE '2020-04-01') THEN
                INSERT INTO player_weapon_stats_2020Q1 VALUES (NEW.*);
        ELSIF (NEW.create_dt >= DATE '2020-04-01' AND NEW.create_dt < DATE '2020-07-01') THEN
                INSERT INTO player_weapon_stats_2020Q2 VALUES (NEW.*);
@@ -57,6 +9,46 @@ BEGIN
                INSERT INTO player_weapon_stats_2020Q3 VALUES (NEW.*);
        ELSIF (NEW.create_dt >= DATE '2020-10-01' AND NEW.create_dt < DATE '2021-01-01') THEN
                INSERT INTO player_weapon_stats_2020Q4 VALUES (NEW.*);
+       ELSIF (NEW.create_dt >= DATE '2021-01-01' AND NEW.create_dt < DATE '2021-04-01') THEN
+               INSERT INTO player_weapon_stats_2021Q1 VALUES (NEW.*);
+       ELSIF (NEW.create_dt >= DATE '2021-04-01' AND NEW.create_dt < DATE '2021-07-01') THEN
+               INSERT INTO player_weapon_stats_2021Q2 VALUES (NEW.*);
+       ELSIF (NEW.create_dt >= DATE '2021-07-01' AND NEW.create_dt < DATE '2021-10-01') THEN
+               INSERT INTO player_weapon_stats_2021Q3 VALUES (NEW.*);
+       ELSIF (NEW.create_dt >= DATE '2021-10-01' AND NEW.create_dt < DATE '2022-01-01') THEN
+               INSERT INTO player_weapon_stats_2021Q4 VALUES (NEW.*);
+       ELSIF (NEW.create_dt >= DATE '2022-01-01' AND NEW.create_dt < DATE '2022-04-01') THEN
+               INSERT INTO player_weapon_stats_2022Q1 VALUES (NEW.*);
+       ELSIF (NEW.create_dt >= DATE '2022-04-01' AND NEW.create_dt < DATE '2022-07-01') THEN
+               INSERT INTO player_weapon_stats_2022Q2 VALUES (NEW.*);
+       ELSIF (NEW.create_dt >= DATE '2022-07-01' AND NEW.create_dt < DATE '2022-10-01') THEN
+               INSERT INTO player_weapon_stats_2022Q3 VALUES (NEW.*);
+       ELSIF (NEW.create_dt >= DATE '2022-10-01' AND NEW.create_dt < DATE '2023-01-01') THEN
+               INSERT INTO player_weapon_stats_2022Q4 VALUES (NEW.*);
+       ELSIF (NEW.create_dt >= DATE '2023-01-01' AND NEW.create_dt < DATE '2023-04-01') THEN
+               INSERT INTO player_weapon_stats_2023Q1 VALUES (NEW.*);
+       ELSIF (NEW.create_dt >= DATE '2023-04-01' AND NEW.create_dt < DATE '2023-07-01') THEN
+               INSERT INTO player_weapon_stats_2023Q2 VALUES (NEW.*);
+       ELSIF (NEW.create_dt >= DATE '2023-07-01' AND NEW.create_dt < DATE '2023-10-01') THEN
+               INSERT INTO player_weapon_stats_2023Q3 VALUES (NEW.*);
+       ELSIF (NEW.create_dt >= DATE '2023-10-01' AND NEW.create_dt < DATE '2024-01-01') THEN
+               INSERT INTO player_weapon_stats_2023Q4 VALUES (NEW.*);
+       ELSIF (NEW.create_dt >= DATE '2024-01-01' AND NEW.create_dt < DATE '2024-04-01') THEN
+               INSERT INTO player_weapon_stats_2024Q1 VALUES (NEW.*);
+       ELSIF (NEW.create_dt >= DATE '2024-04-01' AND NEW.create_dt < DATE '2024-07-01') THEN
+               INSERT INTO player_weapon_stats_2024Q2 VALUES (NEW.*);
+       ELSIF (NEW.create_dt >= DATE '2024-07-01' AND NEW.create_dt < DATE '2024-10-01') THEN
+               INSERT INTO player_weapon_stats_2024Q3 VALUES (NEW.*);
+       ELSIF (NEW.create_dt >= DATE '2024-10-01' AND NEW.create_dt < DATE '2025-01-01') THEN
+               INSERT INTO player_weapon_stats_2024Q4 VALUES (NEW.*);
+       ELSIF (NEW.create_dt >= DATE '2025-01-01' AND NEW.create_dt < DATE '2025-04-01') THEN
+               INSERT INTO player_weapon_stats_2025Q1 VALUES (NEW.*);
+       ELSIF (NEW.create_dt >= DATE '2025-04-01' AND NEW.create_dt < DATE '2025-07-01') THEN
+               INSERT INTO player_weapon_stats_2025Q2 VALUES (NEW.*);
+       ELSIF (NEW.create_dt >= DATE '2025-07-01' AND NEW.create_dt < DATE '2025-10-01') THEN
+               INSERT INTO player_weapon_stats_2025Q3 VALUES (NEW.*);
+       ELSIF (NEW.create_dt >= DATE '2025-10-01' AND NEW.create_dt < DATE '2026-01-01') THEN
+               INSERT INTO player_weapon_stats_2025Q4 VALUES (NEW.*);
        ELSE
                RAISE EXCEPTION 'Date out of range. Fix the player_weapon_stats_ins() trigger!';
        END IF;