fatatra
Messages postés50Date d'inscriptionlundi 30 octobre 2006StatutMembreDernière intervention 3 décembre 2007
-
9 nov. 2007 à 18:50
pneau
Messages postés258Date d'inscriptionmercredi 21 avril 2004StatutMembreDernière intervention27 octobre 2010
-
12 nov. 2007 à 11:50
Bonjour a tous;
J'ais une base de données qui contient des evenements a un champ date yyyy-mm-aa et un champ heure hh:mm:ss.
A un moment donnée je voudrais select tous les evenements qui ne sont pas encore passée.
je fais donc un truc comme ca: (je precise qu'on est entre des balises php):
$time= mysql_fetch_row($ time ); j'en passe...et la requéte:
SELECT id,date FROM entrainements WHERE date> ='".$date[0]."'AND heure>='".$time[0]."' ORDER BY date ASC"
Et ca ne marche pas puisque si j'effectue la requete a 18h les entrainements du lendemain a 12h ne sont pas selectionnés ainsi que tous les suivants qui ont une heure inférieur a celle de la requete!!
En faite je voudrais qu'on m'explique comment faire une requete qui littéralement dirais:
select tous les (id,entrainements) dont la date est superieur a aujourd'hui ET aussi ceux d'aujourd'hui dont l'heure n'est pas passée!!!
Voila, et c'est pas aussi facile que ca en a l'air.
pneau
Messages postés258Date d'inscriptionmercredi 21 avril 2004StatutMembreDernière intervention27 octobre 20105 12 nov. 2007 à 11:50
salut
il faut que tu scinde ta clause where en 2 parties...
une premiere partie va dire
(date='".$date[0]."'AND heure>='".$time[0]."')
puis un "OR"
puis une seconde partie
(date >'".$date[0]."')
ce qui signifie littéralement :
prendre tous les évènements
dont la date est aujourd'hui avec une heure supérieure à l'heure actuelle
ou dont la date est supérieure à aujourd'hui.