/* SQL query templates. */ // =====[ MAPS ]===== char sqlite_maps_alter1[] = "\ ALTER TABLE Maps \ ADD InRankedPool INTEGER NOT NULL DEFAULT '0'"; char mysql_maps_alter1[] = "\ ALTER TABLE Maps \ ADD InRankedPool TINYINT NOT NULL DEFAULT '0'"; char sqlite_maps_insertranked[] = "\ INSERT OR IGNORE INTO Maps \ (InRankedPool, Name) \ VALUES (%d, '%s')"; char sqlite_maps_updateranked[] = "\ UPDATE OR IGNORE Maps \ SET InRankedPool=%d \ WHERE Name = '%s'"; char mysql_maps_upsertranked[] = "\ INSERT INTO Maps (InRankedPool, Name) \ VALUES (%d, '%s') \ ON DUPLICATE KEY UPDATE \ InRankedPool=VALUES(InRankedPool)"; char sql_maps_reset_mappool[] = "\ UPDATE Maps \ SET InRankedPool=0"; char sql_maps_getname[] = "\ SELECT Name \ FROM Maps \ WHERE MapID=%d"; char sql_maps_searchbyname[] = "\ SELECT MapID, Name \ FROM Maps \ WHERE Name LIKE '%%%s%%' \ ORDER BY (Name='%s') DESC, LENGTH(Name) \ LIMIT 1"; // =====[ PLAYERS ]===== char sql_players_getalias[] = "\ SELECT Alias \ FROM Players \ WHERE SteamID32=%d"; char sql_players_searchbyalias[] = "\ SELECT SteamID32, Alias \ FROM Players \ WHERE Players.Cheater=0 AND LOWER(Alias) LIKE '%%%s%%' \ ORDER BY (LOWER(Alias)='%s') DESC, LastPlayed DESC \ LIMIT 1"; // =====[ MAPCOURSES ]===== char sql_mapcourses_findid[] = "\ SELECT MapCourseID \ FROM MapCourses \ WHERE MapID=%d AND Course=%d"; // =====[ GENERAL ]===== char sql_getpb[] = "\ SELECT Times.RunTime, Times.Teleports \ FROM Times \ INNER JOIN MapCourses ON MapCourses.MapCourseID=Times.MapCourseID \ WHERE Times.SteamID32=%d AND MapCourses.MapID=%d \ AND MapCourses.Course=%d AND Times.Mode=%d \ ORDER BY Times.RunTime \ LIMIT %d"; char sql_getpbpro[] = "\ SELECT Times.RunTime \ FROM Times \ INNER JOIN MapCourses ON MapCourses.MapCourseID=Times.MapCourseID \ WHERE Times.SteamID32=%d AND MapCourses.MapID=%d \ AND MapCourses.Course=%d AND Times.Mode=%d AND Times.Teleports=0 \ ORDER BY Times.RunTime \ LIMIT %d"; char sql_getmaptop[] = "\ SELECT t.TimeID, t.SteamID32, p.Alias, t.RunTime AS PBTime, t.Teleports \ FROM Times t \ INNER JOIN MapCourses mc ON mc.MapCourseID=t.MapCourseID \ INNER JOIN Players p ON p.SteamID32=t.SteamID32 \ LEFT OUTER JOIN Times t2 ON t2.SteamID32=t.SteamID32 \ AND t2.MapCourseID=t.MapCourseID AND t2.Mode=t.Mode AND t2.RunTime