Click here to Skip to main content
Click here to Skip to main content

Accurate DATETIME Range Searching in SQL Server

By , 9 Dec 2009
 
When searching between datetimes in SQL(or SQL in a Stored Proc) we can't just do:
select * from <table>
where CreateTime >= @DateFrom and CreateTime <= @DateTo
If your search is date inclusive and you're not concerned with time, which most users aren't, then you need to add a little extra code to get the right results. Basically, you need to add one day to @DateTo and trunc. Here's a Sql Server 2005 function that will help:
 
CREATE FUNCTION [dbo].[trunc]
(
    @dt datetime
)
RETURNS datetime
AS
BEGIN
            return dateadd(day, datediff(day, 0, @dt), 0);
END
Now your SQL should be:
select * from <table>
where CreateTime >= dbo.trunc(@DateFrom)
and CreateTime < dbo.trunc(@DateTo + 1)
If you want more info about this then go to: Accurate DATETIME Range Searching in SQL Server[^]

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

About the Author

Mark Graham
Web Developer Currently working on projects for May Gurney
United Kingdom United Kingdom
Member
Areas of expertise: c#, asp.net, design patterns, GUI useability/layout

Sign Up to vote   Poor Excellent
Add a reason or comment to your vote: x
Votes of 3 or less require a comment

Comments and Discussions

 
Hint: For improved responsiveness ensure Javascript is enabled and choose 'Normal' from the Layout dropdown and hit 'Update'.
You must Sign In to use this message board.
Search this forum  
    Spacing  Noise  Layout  Per page   
GeneralMy vote of 4membersource.compiler23 Jul '12 - 17:54 
QuestionWhat about...memberPeter Tewkesbury4 Dec '09 - 8:51 
AnswerRe: What about...memberMark Graham7 Dec '09 - 0:18 
GeneralRe: What about...membersupercat99 Dec '09 - 5:41 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Permalink | Advertise | Privacy | Mobile
Web01 | 2.6.130516.1 | Last Updated 9 Dec 2009
Article Copyright 2009 by Mark Graham
Everything else Copyright © CodeProject, 1999-2013
Terms of Use
Layout: fixed | fluid