From 2376e511ac8da8656fa79f02bc98d152fb677660 Mon Sep 17 00:00:00 2001 From: Azalea <22280294+hykilpikonna@users.noreply.github.com> Date: Thu, 21 Nov 2024 11:39:36 -0500 Subject: [PATCH] [+] DB migration for ranking optimization --- .../mariadb/V1000_19__optimization.sql | 49 +++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 src/main/resources/db/migration/mariadb/V1000_19__optimization.sql diff --git a/src/main/resources/db/migration/mariadb/V1000_19__optimization.sql b/src/main/resources/db/migration/mariadb/V1000_19__optimization.sql new file mode 100644 index 00000000..665ffd97 --- /dev/null +++ b/src/main/resources/db/migration/mariadb/V1000_19__optimization.sql @@ -0,0 +1,49 @@ +-- Create views to unify some aspects of the user data and playlog tables + +DROP VIEW IF EXISTS maimai2_user_playlog_view; +CREATE VIEW maimai2_user_playlog_view AS +SELECT + *, + IF((tap_miss + tap_good + tap_great = 0) AND + (hold_miss + hold_good + hold_great = 0) AND + (slide_miss + slide_good + slide_great = 0) AND + (touch_miss + touch_good + touch_great = 0) AND + (break_miss + break_good + break_great = 0), 1, 0) AS is_all_perfect, + IF(max_combo = total_combo, 1, 0) AS is_full_combo +FROM maimai2_user_playlog; + +DROP VIEW IF EXISTS maimai2_user_data_view; +CREATE VIEW maimai2_user_data_view AS +SELECT * FROM maimai2_user_detail; + +DROP VIEW IF EXISTS chusan_user_playlog_view; +CREATE VIEW chusan_user_playlog_view AS +SELECT + *, + score as achievement, + is_all_justice as is_all_perfect +FROM chusan_user_playlog; + +DROP VIEW IF EXISTS chusan_user_data_view; +CREATE VIEW chusan_user_data_view AS +SELECT *, card_id as aime_card_id FROM chusan_user_data; + +DROP VIEW IF EXISTS ongeki_user_playlog_view; +CREATE VIEW ongeki_user_playlog_view AS +SELECT + *, + tech_score as achievement, + is_all_break as is_all_perfect +FROM ongeki_user_playlog; + +DROP VIEW IF EXISTS ongeki_user_data_view; +CREATE VIEW ongeki_user_data_view AS +SELECT * FROM ongeki_user_data; + +DROP VIEW IF EXISTS wacca_user_playlog_view; +CREATE VIEW wacca_user_playlog_view AS +SELECT * FROM wacca_user_playlog; + +DROP VIEW IF EXISTS wacca_user_data_view; +CREATE VIEW wacca_user_data_view AS +SELECT * FROM wacca_user; \ No newline at end of file