Установка даты переменной в SQL

В SQL Server Management Studio я пытаюсь ссылаться на определенную дату и время, используя переменную для даты, как показано ниже.

Declare @specified_date Date
set @specified_date = '07-01-2013'

Select * 
from etc
Where CreatedDate > CONVERT(datetime, @specified_date & '00:00:00.000' )

Этот код не работает, и я получаю эту ошибку:

Дата данных и varchar несовместимы в '&' Оператор.

Используемые данные содержат как дату, так и временной код, и вместо того, чтобы изменять несколько запросов, я хотел бы просто определить дату один раз и переместить переменную. Если кто-нибудь знает о решении, это будет здорово.

Ответ 1

Вы пробовали это:

Declare @specified_date Date
set @specified_date = '07-01-2013'
Select * from etc
Where CreatedDate > @specified_date

Ответ 2

Используйте + вместо &. Вам также нужно будет указать строку, чтобы сделать ее datetime.

Declare @specified_date Date
set @specified_date = '07-01-2013'
Select * from etc
Where CreatedDate > CONVERT(datetime, @specified_date + cast('00:00:00.000' as datetime))