sql server - How to select date without time in SQL

ID : 10423

viewed : 80

Tags : sqlsql-serversql-server-2005sql

Top 5 Answer for sql server - How to select date without time in SQL

vote vote

94

For SQL Server 2008:

Convert(date, getdate())   

Please refer to https://docs.microsoft.com/en-us/sql/t-sql/functions/getdate-transact-sql

vote vote

80

I guess he wants a string.

select convert(varchar(10), '2011-02-25 21:17:33.933', 120) 

120 here tells the convert function that we pass the input date in the following format: yyyy-mm-dd hh:mi:ss.

vote vote

79

The fastest is datediff, e.g.

select dateadd(d, datediff(d,0, [datecolumn]), 0), other.. from tbl 

But if you only need to use the value, then you can skip the dateadd, e.g.

select ... WHERE somedate <= datediff(d, 0, getdate()) 

where the expression datediff(d, 0, getdate()) is sufficient to return today's date without time portion.

vote vote

64

Use CAST(GETDATE() as date) that worked for me, simple.

Top 3 video Explaining sql server - How to select date without time in SQL

Related QUESTION?