summaryrefslogtreecommitdiff
path: root/queries/participant/stats.sql
diff options
context:
space:
mode:
Diffstat (limited to 'queries/participant/stats.sql')
-rw-r--r--queries/participant/stats.sql13
1 files changed, 13 insertions, 0 deletions
diff --git a/queries/participant/stats.sql b/queries/participant/stats.sql
new file mode 100644
index 0000000..05a9697
--- /dev/null
+++ b/queries/participant/stats.sql
@@ -0,0 +1,13 @@
+WITH stats AS (
+ SELECT
+ api_id,
+ CASE WHEN roster.hero_kills=0
+ THEN 0
+ ELSE (kills+assists)/roster.hero_kills::float
+ END AS kill_participation
+ FROM participant JOIN roster ON roster.api_id=participant.roster_api_id
+)
+INSERT INTO participant_stats(participant_api_id, kill_participation)
+SELECT * FROM stats
+ON CONFLICT(participant_api_id) DO
+UPDATE SET(participant_api_id, kill_participation) = (SELECT * FROM stats)