-3

在执行我的查询时,我收到以下错误消息“从字符串转换日期和/或时间时转换失败”是我的查询。

select OrderLog_Initiated, OrderLog_SessionDateTime 
into #FullMemberOrderLog
from tbl_orderlog   
where CONVERT(date,OrderLog_Initiated) between '2013-03-03' and '2013-03-08' -- order     by OrderLog_Initiated     

insert into #FullMemberOrderLog 
select OrderLog_Initiated, OrderLog_SessionDateTime 
from tbl_orderlog 
where CONVERT(date,OrderLog_Initiated) between '2013-03-03' and '2013-03-08'
select #result = (cast(DATEDIFF(HOUR,CONVERT(date,'OrderLog_Initiated'),CONVERT(date,'OrderLog_SessionDateTime' )) as float) ) from  #FullMemberOrderLog 

请有人在这个问题上帮助我,真的我在煎炸......我的预期结果是将“OrderLog_Initiated”表与“OrderLog_SessionDateTime”表进行比较,并提供以小时为单位的时差,但我无法得到我的预期。请有人帮助我,非常感谢您提前。

4

1 回答 1

0

你是说:

CONVERT(date,'OrderLog_Initiated')

尝试:

CONVERT(date,OrderLog_Initiated)

(列名周围没有单引号,否则它只会被视为字符串。)

另外,您为什么要使用完全相同的查询同时执行 aSELECT INTO和 an ?INSERT INTO选一个。

最后,你为什么说:

SELECT #result = 

代替:

SELECT result = 

?

于 2013-03-19T14:12:38.363 回答