Я пытаюсь добавить время из столбца к дате и использовать в регистре дел
getdate() at time zone 'Central Standard Time'
это то, что я пробовал до сих пор
select case when
getdate() at time zone 'Central Standard Time' <=
cast(cast (getdate() at time zone 'Central Standard Time'as date) as datetime) + endtime from tablename where id = 'uniqueid'
1 else 0 end
тип данных столбца endtime
- nvarchar, формат времени - 21:00
, и это ошибка, которую я получаю
Incorrect syntax near the keyword 'from'
Я также пытался использовать это решение { ссылка }, но ошибка все та же. Но когда я делаю
select CAST(CAST(getdate() at time zone 'Central Standard Time' AS DATE) AS DATETIME) + endtime from tablename where id = 'uniqueid'
, я получаю правильный ответ 2020-01-07 07:00:00.000
, и это, кажется, тоже хорошо работает
select case when
getdate() at time zone 'Central Standard Time' >=
CAST(CAST(CAST(getdate() at time zone 'Central Standard Time'AS DATE) AS DATETIME) + '' + '10:00'as DATETIME)
then 1 else 0
end
возвращает 1
, но
select case when
getdate() at time zone 'Central Standard Time' <=
cast(CAST(CAST(getdate() at time zone 'Central Standard Time' AS DATE) AS DATETIME) + endtime from table where id = 'uniqueid' as datetime)
then 1 else 0 end
возвращает Incorrect syntax near the keyword 'where'
Я не уверен, что я делаю что-то не так или это ограничение.