@@ -79,6 +79,8 @@ CREATE TABLE accepted_count (
79
79
problem_count INT NOT NULL ,
80
80
PRIMARY KEY (user_id)
81
81
);
82
+ CREATE INDEX ON accepted_count (LOWER (user_id));
83
+ CREATE INDEX ON accepted_count (problem_count DESC , user_id);
82
84
83
85
DROP TABLE IF EXISTS points;
84
86
CREATE TABLE points (
@@ -94,6 +96,8 @@ CREATE TABLE rated_point_sum (
94
96
point_sum BIGINT NOT NULL ,
95
97
PRIMARY KEY (user_id)
96
98
);
99
+ CREATE INDEX ON rated_point_sum (LOWER (user_id));
100
+ CREATE INDEX ON rated_point_sum (point_sum DESC , user_id);
97
101
98
102
DROP TABLE IF EXISTS language_count;
99
103
CREATE TABLE language_count (
@@ -102,6 +106,8 @@ CREATE TABLE language_count (
102
106
problem_count INT NOT NULL ,
103
107
PRIMARY KEY (user_id, simplified_language)
104
108
);
109
+ CREATE INDEX ON language_count (LOWER (user_id));
110
+ CREATE INDEX ON language_count (simplified_language, problem_count DESC , user_id);
105
111
106
112
DROP TABLE IF EXISTS predicted_rating;
107
113
CREATE TABLE predicted_rating (
@@ -124,6 +130,8 @@ CREATE TABLE max_streaks (
124
130
streak BIGINT NOT NULL ,
125
131
PRIMARY KEY (user_id)
126
132
);
133
+ CREATE INDEX ON max_streaks (LOWER (user_id));
134
+ CREATE INDEX ON max_streaks (streak DESC , user_id);
127
135
128
136
-- For internal services:
129
137
DROP TABLE IF EXISTS internal_problem_list_items;
0 commit comments