mod count

Mammouth du PHP | 514 Messages

06 sept. 2007, 11:04

Bonjour,

mon mysql me renvoie une erreur sur la requête suivante :

Code : Tout sélectionner

SELECT COUNT(*) FROM articles A, users U, pages P WHERE P.Id = A.pageId AND U.Id = A.userId AND pageId = 140 AND 1 = (SELECT !MOD(COUNT(R.Archive), 2) FROM articles_operations R WHERE R.ArticleId = A.Id)
L'erreur renvoyée est :
une exception a été gérée :
Message : Erreur lors de l'execution de la requête
You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT !MOD(COUNT(R.Archive), 2) FROM articles_operations R
SELECT COUNT(*) FROM articles A, users U, pages P WHERE P.Id = A.pageId AND U.Id = A.userId AND pageId = 140 AND 1 = (SELECT !MOD(COUNT(R.Archive), 2) FROM articles_operations R WHERE R.ArticleId = A.Id) Numero: 1064
Page/home2/t/t2m-interim/www/includes/sql/sgbd/mysql.cmd.php
Ligne : 143

A savoir que j'avais déjà utilisé cette requête dans une autre application, et qu'elle fonctionnait bien. N'ayant qu'à moitié compris le modulo, je me demande si ça ne viendrait pas d'une table qui n'aurait aucune valeur ou je ne sais quoi.

Merci d'avance de votre aide.

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

06 sept. 2007, 11:27

Hum... pourquoi un point d'exclamation avant le modulo ?
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Mammouth du PHP | 514 Messages

06 sept. 2007, 13:12

C'est pour vérifier que le nombre est un impair, il me semble.

Je crois que c'est une syntaxe que quelqu'un m'avait donnée sur phpfrance.

le voilà:
http://www.phpfrance.com/forums/viewtop ... highlight=