14

Trying this to cast time away

   select CONVERT(char(10), [Reg Date1], 103) [Reg Date], Regs
    from (
          select cast(SetupDateTime as DATE) [Reg Date1]
               , COUNT(distinct ID) [Regs]
          from dbo.tbl_User
          where cast(SetupDateTime as DATE) 
                between cast((DATEADD (dd , -7 , GETDATE())) AS DATE) 
                    and cast((DATEADD (dd , -1 , GETDATE())) AS DATE)
          group by cast(SetupDateTime as DATE)
        ) a
    order by a.[Reg Date1]

but I get this error

Msg 243, Level 16, State 1, Line 1
Type DATE is not a defined system type.

Ahmed Ali
  • 977
  • 1
  • 12
  • 25
Chris Manko
  • 202
  • 1
  • 3
  • 7

2 Answers2

21

You are using SQL Server 2005 or earlier. Data type date was introduced in SQL Server 2008. Try to cast to datetime instead.

Have a look at this question on how to remove the time part from a datetime. Best approach to remove time part of datetime in SQL Server

Community
  • 1
  • 1
Mikael Eriksson
  • 136,425
  • 22
  • 210
  • 281
0

If you are using Sybase ASE, what you need is datetime.

aF.
  • 64,980
  • 43
  • 135
  • 198