Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & MySQL
PHP & MySQL Forum d'entraide sur les fonctions MySQL avec PHP. Avant de poster -> FAQ MySQL, Cours MySQL et Sources MySQL. Pour les questions concernant le moteur MySQL plutôt que les fonctions PHP, merci d'utiliser le forum MySQL.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 31/03/2011, 14h24   #1
Nouveau Membre du Club
 
Inscription : décembre 2004
Messages : 41
Détails du profil
Informations forums :
Inscription : décembre 2004
Messages : 41
Points : 28
Points : 28
Envoyer un message via MSN à ¤dinky¤
Par défaut [STAT] Selectionner le plus gros nombre de visite par jour

Bonjour,

Débutant avec MySql, je cherche à sortir de ma table "stat_visite" le plus grand nombre de visite avec la date de la journée.

Mes Stats sont par jour.

Je suis partis là dessus mais il me manque quelque chose ou je suis mal partis... :
Code :
$totalSite = mysql_query("SELECT SUM(visites) AS total_site, date AS site_date FROM stat_visites GROUP BY date ");
Cela me donne le total de ma première journée, mais je veux le plus gros total de toutes les journées.

Merci à vous pour votre aide.
¤dinky¤ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/03/2011, 14h43   #2
Membre éprouvé
 
Avatar de radicaldreamer
 
Homme Guillaume
Développeur Web
Inscription : décembre 2007
Messages : 353
Détails du profil
Informations personnelles :
Nom : Homme Guillaume
Âge : 21
Localisation : France, Haut Rhin (Alsace)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : décembre 2007
Messages : 353
Points : 473
Points : 473
Je ne pense pas qu'il faille faire comme ça. Je penche plutôt pour un

select max(). Avec une requete imbriquée.

tu fais un "select max()" du calcule de tes jours. (J'ai abandonné SQL au cm1, je ne pourrais plus te dire exactement comment faire)
__________________
Si ce que tu as à dire n'est pas plus beau que le silence, alors tais toi.

- Pensez à voter pour les messages qui vous ont été utiles ainsi que de mettre
radicaldreamer est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/03/2011, 14h46   #3
Membre éprouvé
 
Avatar de radicaldreamer
 
Homme Guillaume
Développeur Web
Inscription : décembre 2007
Messages : 353
Détails du profil
Informations personnelles :
Nom : Homme Guillaume
Âge : 21
Localisation : France, Haut Rhin (Alsace)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : décembre 2007
Messages : 353
Points : 473
Points : 473
Exporte voir ta table et colle le code ici histoire que je la créée chez moi et que j'essaye de t'aider
__________________
Si ce que tu as à dire n'est pas plus beau que le silence, alors tais toi.

- Pensez à voter pour les messages qui vous ont été utiles ainsi que de mettre
radicaldreamer est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/03/2011, 15h01   #4
Membre émérite
 
Avatar de vorace
 
Homme
Développeur
Inscription : août 2010
Messages : 587
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Meurthe et Moselle (Lorraine)

Informations professionnelles :
Activité : Développeur

Informations forums :
Inscription : août 2010
Messages : 587
Points : 861
Points : 861
Citation:
Cela me donne le total de ma première journée, mais je veux le plus gros total de toutes les journées.
étrange, c'est plutot censé te donner le nombre de visite par jour et pour chaque jour...
Code :
SELECT MAX(resultat.total_site) as total_visite, resultat.site_date FROM (SELECT SUM(visites) AS total_site, date AS site_date FROM stat_visites GROUP BY date) as resultat
__________________
Développeur informatique contrarié...
vorace est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/03/2011, 15h03   #5
Nouveau Membre du Club
 
Inscription : décembre 2004
Messages : 41
Détails du profil
Informations forums :
Inscription : décembre 2004
Messages : 41
Points : 28
Points : 28
Envoyer un message via MSN à ¤dinky¤
Merci pour ton aide

Citation:
-- phpMyAdmin SQL Dump
-- version 3.2.1


-- --------------------------------------------------------

--
-- Structure de la table `stat_visites`
--

CREATE TABLE IF NOT EXISTS `stat_visites` (
`visites` mediumint(9) NOT NULL,
`page` varchar(150) NOT NULL,
`date` date NOT NULL,
KEY `page` (`page`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

--
-- Contenu de la table `stat_visites`
--

INSERT INTO `stat_visites` (`visites`, `page`, `date`) VALUES
(1, 'qui.php', '2011-03-28'),
(1, 'reseau.php', '2011-03-28'),
(1, 'prestation.php', '2011-03-28'),
(1, 'particuliers.php (prestation particuliers)', '2011-03-28'),
(2, 'accueil.php', '2011-03-28'),
(10, 'event1.php (page des évènements)', '2011-03-28'),
(3, 'accueil.php', '2011-03-29'),
(6, 'actus.php', '2011-03-29'),
(3, 'pratique.php', '2011-03-29'),
(2, 'lexique.php', '2011-03-29'),
(1, 'prestation.php', '2011-03-29'),
(1, 'particuliers.php (prestation particuliers)', '2011-03-29'),
(1, 'avantage.php', '2011-03-29'),
(1, 'liens.php', '2011-03-29'),
(1, 'contact.php', '2011-03-29'),
(1, 'devis.php', '2011-03-29'),
(14, 'accueil.php', '2011-03-30'),
(2, 'event1.php (page des évènements)', '2011-03-30'),
(2, 'actus.php', '2011-03-30'),
(2, 'actu.php', '2011-03-30'),
(1, 'entreprise.php (page de connexion)', '2011-03-30'),
(3, 'qui.php', '2011-03-31'),
(6, 'actu.php', '2011-03-31');

Normalement le chiffre à trouver, c'est 21 comme au blackjack

Je suis entrain de tester avec MAX()
¤dinky¤ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/03/2011, 15h14   #6
Nouveau Membre du Club
 
Inscription : décembre 2004
Messages : 41
Détails du profil
Informations forums :
Inscription : décembre 2004
Messages : 41
Points : 28
Points : 28
Envoyer un message via MSN à ¤dinky¤
Citation:
Envoyé par vorace Voir le message
étrange, c'est plutot censé te donner le nombre de visite par jour et pour chaque jour...
Code :
SELECT MAX(resultat.total_site) as total_visite, resultat.site_date FROM (SELECT SUM(visites) AS total_site, date AS site_date FROM stat_visites GROUP BY date) as resultat
Ca fonctionne je trouve bien 21, donc il fallait bien que je rajoute une sous-requête. Toutefois, j'ai toujours la même date du premier jour et non de la date en référence.
¤dinky¤ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/03/2011, 15h36   #7
Membre émérite
 
Avatar de vorace
 
Homme
Développeur
Inscription : août 2010
Messages : 587
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Meurthe et Moselle (Lorraine)

Informations professionnelles :
Activité : Développeur

Informations forums :
Inscription : août 2010
Messages : 587
Points : 861
Points : 861
bizarre, ça me fait la même chose...
__________________
Développeur informatique contrarié...
vorace est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/03/2011, 16h00   #8
Membre émérite
 
Avatar de vorace
 
Homme
Développeur
Inscription : août 2010
Messages : 587
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Meurthe et Moselle (Lorraine)

Informations professionnelles :
Activité : Développeur

Informations forums :
Inscription : août 2010
Messages : 587
Points : 861
Points : 861
sinon voila une alternative qui marche :
Code :
SELECT SUM(visites) as total_site, date as site_date FROM stat_visites GROUP BY date ORDER BY total DESC LIMIT 0,1
Mysql et les requêtes imbriquées...
__________________
Développeur informatique contrarié...
vorace est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 31/03/2011, 17h34   #9
Nouveau Membre du Club
 
Inscription : décembre 2004
Messages : 41
Détails du profil
Informations forums :
Inscription : décembre 2004
Messages : 41
Points : 28
Points : 28
Envoyer un message via MSN à ¤dinky¤
Merci beaucoup pour votre aide, tu as trouvé

Une autre façon de l'écrire :
Code :
SELECT SUM(visites) AS total_site, date AS site_date FROM stat_visites GROUP BY date ORDER BY total_site DESC LIMIT 1
Merci encore vous m'avez avancé
¤dinky¤ est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h53.


 
 
 
 
Partenaires

Hébergement Web