salut,
la structure de la table ainsi qu'un jeux de données c'est plus facile.
donc a priori 4 colonnes "jeux" ?
si oui c'est un défaut de conception (quand tu aurais 58 jeux il y aura 58 colonnes jeux ?).
il te faut une table jeux et une table qui fait la jointure entre les deux.
pour les tests j'ai utiliser cette table (vu que tu utilise mysql me suis permis d'utiliser du code spécifique mysql).
[mysql]
CREATE TABLE `clans_table` (
`id_clan` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
`points_jeux1` INT(11) NOT NULL DEFAULT '0',
`points_jeux2` INT(11) NOT NULL DEFAULT '0',
`points_jeux3` INT(11) NOT NULL DEFAULT '0',
`points_jeux4` INT(11) NOT NULL DEFAULT '0',
`nom` VARCHAR(20) NOT NULL,
PRIMARY KEY (`id_clan`)
);
[/mysql]
ensuite il faut toujours tester les requêtes dans un client mysql (comme phpmyadmin, mysql workbench ou encore heidisql).
au premier essai tu as une erreur au niveau du as dans le where.
pourquoi ?
parce que l'on ne donne un alias que dans le select ou sur un table (from / join).
Avec ma table exemple le group by n'a pas de sens (id_clan est la pk donc unique par nature) vu le nom de la table cela me semble logique.
est ce le cas pour toi ?
La solution c'est de retirer l'alias, le group by et le order by qui sont inutile (parce que tu ne demande qu'une seule ligne, et pas le rang de tout le monde, si c'est le cas tu le fait en php avec un incrément

si tu veux la valeur tu doit faire une autre requête.
[mysql]
SELECT COUNT(1)+1
FROM clans_table
WHERE
(points_jeux1 + points_jeux2 + points_jeux3 + points_jeux4) > (
SELECT (points_jeux1 + points_jeux2 + points_jeux3 + points_jeux4)
FROM clans_table
WHERE id_clan=1)
[/mysql]
avec un autre sgbd je t'aurais proposé une solution sql adapté avec dense rank mais la pas moyen :/ (non implémenter dans mysql)
@+