有人可以帮助我将1218100860
转换为datetime
吗?
我试过这样:
SELECT CONVERT(VARCHAR(11), DATEADD(s,1218100860, '1970-01-01 00:00:00'), 101)
并且它有效,但是当我尝试这样做时,它会抛出一个错误:
SELECT
CONVERT(VARCHAR(11), DATEADD(s, rd.Request_Date, '1970-01-01 00:00:00'), 101)
FROM
dbo.RequestDetails rd
其中Request_Date
是必须将值转换为datetime
的列
错误是:
参数数据类型varchar对于dateadd函数的参数2无效。
答案 0 :(得分:0)
我不知道你正在使用什么RDBMS(也许是sQL Server?),但是:
参数数据类型varchar对于dateadd函数的参数2无效
这意味着参数2(rd.Request_Date
)不应该是varchar
。
因为在你的第一个例子中你使用了一个整数并且它有效,
那么你似乎只需要将rd.Request_Date
转换为整数,它应该可以工作,
像这样:
SELECT CONVERT(VARCHAR(11),DATEADD(s,CONVERT(INT, rd.Request_Date), '1970-01-01 00:00:00'),101 )