Синтаксическая ошибка при конвертации из MySQL в T-SQL
Я новичок в SQL . Я конвертирую MySQL в SQL .
Я обнаружил ошибку при использовании функции DateAdd.
Вот запрос:
SELECT
[id],
[test_code],
[test_name],
[test_price],
[discount],
DATEADD(CURRENT_TIMESTAMP, INTERVAL [test_duration] HOUR) as delivery_date,
[is_active]
FROM [icddrb_tblab].[dbo].[tb_test]
WHERE [icddrb_tblab].[dbo].[tb_test].[id] =0
Выдает ошибку: сообщение 102, уровень 15, состояние 1, строка 7
Неверный синтаксис рядом с 'test_duration'.'
Может кто-нибудь подсказать мне, в чем проблема.
2 ответа
DATEADD
функция принимает такой параметр DATEADD (datepart , number , date )
Вы можете использовать это.
SELECT
[id],
[test_code],
[test_name],
[test_price],
[discount],
DATEADD(HOUR, [test_duration], CURRENT_TIMESTAMP ) as delivery_date,
[is_active]
FROM [icddrb_tblab].[dbo].[tb_test]
WHERE [icddrb_tblab].[dbo].[tb_test].[id] =0
Решено:
DATEADD(HOUR,[test_duration], CURRENT_TIMESTAMP) as delivery_date,
это фактический формат.