Requête SQL pour afficher plus proche de la date?
Je suis à essayer de comprendre comment écrire une requête MySQL qui sera de retour le plus proche 3 événements en termes de date.
C'est ma table:
EVENT_ID EVENT_NAME EVENT_START_DATE(DATETIME)
1 test 2011-06-01 23:00:00
2 test2 2011-06-03 23:00:00
3 test3 2011-07-01 23:00:00
4 test4 2011-08-09 23:00:00
5 test5 2011-06-02 23:00:00
6 test6 2011-04-20 23:00:00
Donc le résultat de la requête doit être pour ID 1,2,5 comme ils sont le plus proche de se produire en comparaison à la date actuelle..
EDIT: requête doit trouver uniquement des événements futurs.
- Ces dates sont en 2010, donc en fait 4, 3 et 2 sont les plus proches de maintenant 🙂 j'ai supposé que tu parlais de ces dates pour 2011.
- wow, complètement raté. Désolé, fixe à 2011
Vous devez vous connecter pour publier un commentaire.
La
ABS()
signifie qu'un événement il y a 1 jour est tout aussi proche que d'un événement 1 jour à l'avenir. Si vous ne souhaitez que des événements qui n'ont pas encore eu lieu, neLa requête à partir de accepté de répondre en fait juste une sorte valeurs précédemment sélectionnées, pas de filtre avant de les sélectionner. Mais cette requête fonctionne pour moi:
Explication: le numéro 10 est une journée à la plage (à la fois avant et après). Sans
ABS()
vous ne pouvez sélectionner que les précédentes ou d'événements futurs, mais j'avais besoin le plus proche.Je suppose que c'est ce que vous devriez être à la recherche pour. Il est semblable à tout le monde elses réponses aswell.