Afficher les urls contenant 0 avec un COUNT

Eléphant du PHP | 168 Messages

27 nov. 2009, 13:10

Bonjour,

Je suis face à un petit problème que je n'arrive pas à contourner..

Voici ma requete.
SELECT domain,request,dateTime, COUNT(dateTime) AS nombre_visites_jour FROM DI 
WHERE domain = 'www.exemple.fr' 
AND `request` = '/fabricant-industriel/carte-communication-76181.html' 
GROUP BY dateTime 
ORDER BY dateTime DESC 
il ne me retourne que les "request" contenant un nombre_visites_jour > 0 et n'affiche pas TOUS les jours et leur COUNT = 0, comment je peux faire svp ?

Merci

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

27 nov. 2009, 16:09

Elle est remplie comment ta table ?

Si tu crées une ligne à chaque fois que l'url est appelée, tu n'auras aucune ligne pour celles jamais appelées, donc que des totaux > 0

Eléphant du PHP | 168 Messages

27 nov. 2009, 16:12

Avec ton raisonnement je trouve ça logique ...

Par contre, dans ce cas, si je veux afficher le nombre de visites journalières pour toutes les Urls, je dois modifier ma requete dans quel sens ?

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

27 nov. 2009, 16:57

Si tu veux avoir un récap pour toutes les urls il te faut un référentiel et le compte des visites.

urls (pk_url, url) => liste de toutes les urls dispos
visites(fk_url, date) => liste des visites

Mais tu sais il y a des outils de stats qui font tout ça très bien :)

Eléphant du PHP | 168 Messages

27 nov. 2009, 17:14

Oui celà serai plus simple en effet, sauf que en gros pour expliquer ce que j'ai..

Ma table = log acces apache depuis 3 mois

J'ai donc exactement la meme chose que sur une ligne d'un log.