sql - '<' के पास गलत सिंटैक्स



sql-server sql-server-2012 (1)

SQL सर्वर 2008R2 में कोई IIF नहीं था

इसे CASE साथ बदलें

ALTER TABLE [dbo].[WorkTimeEntries] ADD [TimeFinishedForRuntime] AS ISNULL(
    [TimeFinished],
    CASE WHEN [TimeStarted] < SYSUTCDATETIME() THEN [dbo].[udf_GetCurrentDateTimeOffsetInTimeZone](DATENAME(TZOFFSET, [TimeStarted])) ELSE [TimeStarted] END);

SQL Server 2008 R2 पर काम करने के लिए SQL Server 2012 पर ठीक से काम कर रहा है जो कुछ कोड प्राप्त करने के लिए मेरे पास एक कार्य है मुझे यह त्रुटि मिली:

अतिरिक्त जानकारी: '' के पास गलत वाक्यविन्यास

जब मैं अपना कोड चलाने की कोशिश करता हूं तो मुझे पता चला कि मेरे एसक्यूएल कोड की इस पंक्ति में कुछ गलत है

ALTER TABLE [dbo].[WorkTimeEntries] 
  ADD [TimeFinishedForRuntime] AS ISNULL([TimeFinished],
        IIF ([TimeStarted] < SYSUTCDATETIME(), [dbo].[udf_GetCurrentDateTimeOffsetInTimeZone](DATENAME(TZOFFSET, [TimeStarted])), [TimeStarted]));

मैंने पढ़ा है कि जब लोग तिथि लेने की कोशिश करते हैं तो इस मामले में किसी प्रकार की गलती हुई, लेकिन मुझे यकीन नहीं है कि मेरे मामले में क्या गलत है।





iif