2011-07-29 4 views
2

Salut, j'essaie d'écrire une requête, mais je ne suis pas sûr de la façon de le faire. C'est le scénario, je veux ramener les enregistrements qui ont été insérés dans la base de données 30 minutes avant le début d'une heure précise et 2 heures après. C'est à quoi ressemble ma requête;Sql requête obtenir la plage de date et heure

SELECT Comment.AddDate,Event.StartTime 
FROM Comment 
JOIN Users on Users.USERS_ID = Comment.UserID 
JOIN Event ON Users.USERS_ID = Event.UserID 
WHERE EventID = 5630 

maintenant de ce qui précède j'ai besoin des documents qui Comment.AddDate a été saisi 30 minutes avant Event.StartTime et 2 heures plus tard. Comment vais-je faire cela?

Répondre

3
SELECT Comment.AddDate, Event.StartTime 
    FROM Comment 
    JOIN Users ON Users.USERS_ID = Comment.UserID 
    JOIN Event ON Users.USERS_ID = Event.UserID 
WHERE EventID = 5630 
    AND Comment.AddDate BETWEEN DATEADD(minute, -30, Event.StartTime) 
     AND DATEADD(hour, 2, Event.StartTime) 

Documentation localisée here.

+0

Merci beaucoup, cela a fonctionné. – pmillio

+0

Content de vous aider! –