+
+-- get_max_score_for_songs(tournament, playmode)
+CREATE TYPE max_score AS (
+ song INTEGER,
+ max_score INTEGER
+);
+
+CREATE FUNCTION get_max_score_for_songs(integer, varchar) RETURNS SETOF max_score
+ AS $$
+ SELECT
+ song,
+ MAX(feetrating)*1000 AS max_score
+ FROM songratings
+ WHERE
+ machine=(
+ SELECT machine FROM tournaments WHERE tournament=$1
+ )
+ AND playmode=$2
+ GROUP BY song
+ ;
+$$
+ LANGUAGE SQL
+ STABLE
+ RETURNS NULL ON NULL INPUT;