Ste*_*fan 0 t-sql sql-server iif sql-server-2008-r2 sql-server-2012
我有一个任务是获取一些在SQL Server 2012上正常工作的代码,以便在SQL Server 2008 R2上工作.我收到了这个错误:
附加信息:'<'附近的语法不正确
当我尝试运行我的代码时,我发现我的SQL代码行中出了问题
ALTER TABLE [dbo].[WorkTimeEntries]
ADD [TimeFinishedForRuntime] AS ISNULL([TimeFinished],
IIF ([TimeStarted] < SYSUTCDATETIME(), [dbo].[udf_GetCurrentDateTimeOffsetInTimeZone](DATENAME(TZOFFSET, [TimeStarted])), [TimeStarted]));
Run Code Online (Sandbox Code Playgroud)
我已经读到,在这种情况下,当人们试图获得约会时发生了某种错误,但我不确定我的情况有什么问题.
IIFSQL Server 2008R2中没有.
替换为 CASE
ALTER TABLE [dbo].[WorkTimeEntries] ADD [TimeFinishedForRuntime] AS ISNULL(
[TimeFinished],
CASE WHEN [TimeStarted] < SYSUTCDATETIME() THEN [dbo].[udf_GetCurrentDateTimeOffsetInTimeZone](DATENAME(TZOFFSET, [TimeStarted])) ELSE [TimeStarted] END);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5143 次 |
| 最近记录: |