Requête SQL count + join + where
Paul
-
totodunet Messages postés 1377 Date d'inscription Statut Membre Dernière intervention -
totodunet Messages postés 1377 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai la requête suivante :
Qui fonctionne et me retourne bien :
Maintenant, si je veux rajouter une condition :
Je me retrouve avec ceci :
Au lieu de ceci :
Merci pour votre aide !
J'ai la requête suivante :
SELECT COUNT(stats.urlid) AS total, links.id AS id
FROM stats
RIGHT OUTER JOIN links ON (links.id = stats.urlid)
GROUP BY stats.urlid
Qui fonctionne et me retourne bien :
TOTAL | ID
0 2
2 1
4 3
Maintenant, si je veux rajouter une condition :
SELECT COUNT(stats.urlid) AS total, links.id AS id
FROM stats
RIGHT OUTER JOIN links ON (links.id = stats.urlid)
WHERE stats.date <= DATE_FORMAT(NOW(), "%Y-%m-%d 18:00:00")
GROUP BY stats.urlid
Je me retrouve avec ceci :
TOTAL | ID
3 3
Au lieu de ceci :
TOTAL | ID
0 2
0 1
3 3
Merci pour votre aide !
A voir également:
- Requête SQL count + join + where
- Where is it - Télécharger - Gestion de fichiers
- Logiciel sql - Télécharger - Bases de données
- Join pdf - Télécharger - PDF
- Sql lister les tables ✓ - Forum Programmation
- Requête bloquée par le pare-feu applicatif claranet webfence ✓ - Forum Réseaux sociaux
1 réponse
syntaxiquement c'est correct vu qui te retourne un résultat mais je ne connais pas tes tables. Visiblement il a retourné la dernière ligne de ce que tu voulais.
Je pense que c'est normal vu qu'il y a 0 et 0 pour tes deux premières, ce qui signifie qu'aucune des deux a eu une date <= à la date de ta condition. Il t'a retourné donc comme demandé seulement ce qui répond à la condition.
un soucis de jointure à mon avis
Qui ne tente rien n'a rien
Je pense que c'est normal vu qu'il y a 0 et 0 pour tes deux premières, ce qui signifie qu'aucune des deux a eu une date <= à la date de ta condition. Il t'a retourné donc comme demandé seulement ce qui répond à la condition.
un soucis de jointure à mon avis
Qui ne tente rien n'a rien