Retrieving Only the Date from a Datetime Value in SQL Server

Retrieving Only the Date from a Datetime Value in SQL Server

There are many times where you might need to only retrieve the date from a datetime value.

For example, you may have today’s datetime (2011-10-10 20:30:28.230) and you want to only get the following value: 2011-10-10.

In SQL Server 2008 or later, you can easily do this by casting/converting the datetime value to the datatype DATE.

A typical example is the following:

–Datetime variable declaration
DECLARE @dateTimeValue as datetime
SET @dateTimeValue=GETDATE()
–Cast the datetime value to the DATE datatype
SELECT CAST(@dateTimeValue as DATE) as OnlyDate
GO

However, in earlier versions of SQL Server the DATE type is not available.
So, if you have a SQL Server 2005 instance or earlier and you want to get the date value from a datetime value you can just create and use a simple scalar-valued function like the following:


———————————
— Create scalar-valued function –
———————————
CREATE FUNCTION dateOnly
(
@dateInput datetime
)
RETURNS varchar (10)
AS
BEGIN

declare @tempRes as varchar(10)
declare @tempYear as varchar(4)
declare @tempMonth as varchar(2)
declare @tempDay as varchar(2)

set @tempYear=(select cast ((datepart(yyyy,@dateInput)) as varchar(4)))
set @tempMonth=(select cast ((datepart(MM,@dateInput)) as varchar(4)))
set @tempDay=(select cast ((datepart(dd,@dateInput)) as varchar(4)))

set @tempRes=@tempYear+’-‘+@tempMonth+’-‘+@tempDay

RETURN @tempRes

END
GO
—————————–


Now that the function is created, the first example changes to:

–Datetime variable declaration

DECLARE @dateTimeValue as datetime
SET @dateTimeValue=GETDATE()
–Get only the date value by calling the scalar-valued function
SELECT dbo.dateOnly(@dateTimeValue) as OnlyDate
GO

…. and that’s it! 🙂

I hope you found the article useful!

Until next time!


My Latest Projects:

Artemakis Artemiou
Artemakis Artemiou is a Senior SQL Server Architect, Author, and a 9 Times Microsoft Data Platform MVP (2009-2018). He has over 15 years of experience in the IT industry in various roles. Artemakis is the founder of SQLNetHub and TechHowTos.com. Artemakis is the creator of the well-known software tools Snippets Generator and DBA Security Advisor. Also, he is the author of many eBooks on SQL Server. Artemakis currently serves as the President of the Cyprus .NET User Group (CDNUG) and the International .NET Association Country Leader for Cyprus (INETA). Artemakis's official website can be found at aartemiou.com.