Précédent   Forum des professionnels en informatique > Bases de données > MySQL > SQL Procédural
SQL Procédural Forum d'entraide sur les triggers, les procédures stockées et les fonctions en 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 10/09/2007, 00h05   #1
Nouveau Membre du Club
 
Avatar de Ministar
 
Inscription : septembre 2006
Messages : 143
Détails du profil
Informations personnelles :
Âge : 25

Informations forums :
Inscription : septembre 2006
Messages : 143
Points : 25
Points : 25
Par défaut Retourner les enregistrement entre 2 heures

Bonjour!

Je souhaiterais retirer de ma base de donnée les connexion de mes membre heure par heure pour faire des stats (indépendamment des jours, je veux juste faire la requete sur un interval de deux heures)

Je fait donc ma requête pour interroger les timestamps de ma base de donnnée comme ceci :

Code :
1
2
3
SELECT COUNT(id_connexion)
               FROM connexion
               WHERE dh_conn BETWEEN "????-??-?? 19:00:00" AND "????-??-?? 20:00:00"
Mais ceci me retourne 0 pour n'importe quelle heure!
Pourquoi?
Comment faire ce que je souhaiterais?

Merci!

Edit : Au lieu de faire le BETWEEN on peut également faire comme ceci :

Code :
1
2
3
SELECT COUNT(id_connexion)
               FROM connexion
               WHERE dh_conn = "????-??-?? 19:??:??"
(comme cela on aura forcement en théorie les enregistrement entre 19h et 20h)
Le resultat reste le même : aucun enregistrement pourtant ils existent!
Ministar est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/09/2007, 08h38   #2
Membre éprouvé
 
Avatar de nounetmasque
 
Inscription : janvier 2003
Messages : 491
Détails du profil
Informations forums :
Inscription : janvier 2003
Messages : 491
Points : 488
Points : 488
Tu devrais t'en sortir avec la fonction DATE_FORMAT(date,format) et le format %H.
__________________
"Dieu reste muet, si seulement nous pouvions convaincre l'être humain d'en faire autant."
nounetmasque est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/09/2007, 10h14   #3
Membre Expert
 
Inscription : août 2002
Messages : 1 036
Détails du profil
Informations forums :
Inscription : août 2002
Messages : 1 036
Points : 1 166
Points : 1 166
Bonjour,

Code :
1
2
3
SELECT COUNT(id_connexion)
FROM connexion
WHERE HOUR(dh_conn) BETWEEN '19' AND '20'
jeca est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/09/2007, 10h44   #4
Candidat au titre de Membre du Club
 
Inscription : décembre 2005
Messages : 50
Détails du profil
Informations forums :
Inscription : décembre 2005
Messages : 50
Points : 14
Points : 14
Citation:
Envoyé par Ministar Voir le message
Bonjour!

Je souhaiterais retirer de ma base de donnée les connexion de mes membre heure par heure pour faire des stats (indépendamment des jours, je veux juste faire la requete sur un interval de deux heures)

Je fait donc ma requête pour interroger les timestamps de ma base de donnnée comme ceci :

Code :
1
2
3
SELECT COUNT(id_connexion)
               FROM connexion
               WHERE dh_conn BETWEEN "????-??-?? 19:00:00" AND "????-??-?? 20:00:00"
Mais ceci me retourne 0 pour n'importe quelle heure!
Pourquoi?
Comment faire ce que je souhaiterais?

Merci!

Edit : Au lieu de faire le BETWEEN on peut également faire comme ceci :

Code :
1
2
3
SELECT COUNT(id_connexion)
               FROM connexion
               WHERE dh_conn = "????-??-?? 19:??:??"
(comme cela on aura forcement en théorie les enregistrement entre 19h et 20h)
Le resultat reste le même : aucun enregistrement pourtant ils existent!
je te propose de faire les heure en UTC, c'est tres simple de les manipuler
ISID est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/09/2007, 12h08   #5
Nouveau Membre du Club
 
Avatar de Ministar
 
Inscription : septembre 2006
Messages : 143
Détails du profil
Informations personnelles :
Âge : 25

Informations forums :
Inscription : septembre 2006
Messages : 143
Points : 25
Points : 25
J'ai utilisé la méthode de nounetmasque, ça fonctionne!
J'ai pas testé la méthode de jeca mais ça n'a pas l'air mal non plus!
Merci du conseil ISID
:p
Ministar 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 09h57.


 
 
 
 
Partenaires

Hébergement Web