all groups > sql server odbc > august 2007 >
You're in the

sql server odbc

group:

SQL Query Get Data a Month Old


SQL Query Get Data a Month Old Gabe Matteson
8/7/2007 4:10:27 PM
sql server odbc:
Does this part of the query look correct? It's formated so that it doesn't
use the time feature and zero's it out to midnight...

where datecreated between
DATEADD(m,-1,CAST(CONVERT(CHAR(10),GETDATE(),120)as DATETIME)) and GETDATE()
order by datecreated

how would i create a query that returns all the rows with the exception of
the past month....? thank you!

Re: SQL Query Get Data a Month Old Dan Guzman
8/7/2007 10:40:18 PM
[quoted text, click to view]

This looks OK to me as long as you want the last 28-31 days or so of data,
including the current day. However, you might consider using
DATEADD/DATEDIFF to remove the time portion of datetime:

DATEADD(day, 0, DATEDIFF(day, 0, GETDATE()))

[quoted text, click to view]

If you want to return only data older than the last 28-31 days, use '<':

WHERE
datecreated <
DATEADD(m,-1,DATEADD(day, 0, DATEDIFF(day, 0, GETDATE()))), GETDATE()

To return only data older than the start of last month:

WHERE
datecreated <
DATEADD(month, DATEDIFF(month, 0, GETDATE()) - 1, 0)


--
Hope this helps.

Dan Guzman
SQL Server MVP

[quoted text, click to view]
Re: SQL Query Get Data a Month Old Dan Guzman
8/7/2007 11:12:41 PM
[quoted text, click to view]

Oops - copy/paste error. This should have been:

WHERE
datecreated <
DATEADD(m,-1,DATEADD(day, 0, DATEDIFF(day, 0, GETDATE())))

--
Hope this helps.

Dan Guzman
SQL Server MVP

[quoted text, click to view]
AddThis Social Bookmark Button