我是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
它给出错误: Msg 102,Level 15,State 1,Line 7
'test_duration'附近的语法不正确。'
任何人都可以建议我,问题出在哪里。
答案 0 :(得分:1)
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
答案 1 :(得分:0)
解决:
DATEADD(HOUR,[test_duration], CURRENT_TIMESTAMP) as delivery_date,
它的实际格式。