C# 使用SQL计算票据打开的小时数

C# 使用SQL计算票据打开的小时数,c#,asp.net,sql-server,C#,Asp.net,Sql Server,可能重复: 我正在使用SQL查询来计算投诉的“开放时间”,从complaintdate到现在为止 Select datediff(hour, Convert(DateTime, Convert(DateTime, Convert(nVarChar, cast(complaintdate as datetime), 101) ) + '' + Convert(varchar, complainttime, 114) ), dateadd(m

可能重复:

我正在使用SQL查询来计算投诉的“开放时间”,从
complaintdate
到现在为止

Select datediff(hour, 
  Convert(DateTime, 
    Convert(DateTime, 
      Convert(nVarChar, cast(complaintdate as datetime), 101)
    ) + '' +
    Convert(varchar, complainttime, 114)
  ), 
  dateadd(mi, 330, GETUTCDATE())
) as [Open Hours] from complaintregister
并得到一个专栏

Open Hours
15139
15070
15070
15070
15070
100
300
200
400

我只想让开放时间超过500小时,这里有一个简单的方法:

select * from ( Select datediff(hour, 
      Convert(DateTime, 
        Convert(DateTime, 
          Convert(nVarChar, cast(complaintdate as datetime), 101)
        ) + '' +
        Convert(varchar, complainttime, 114)
      ), 
      dateadd(mi, 330, GETUTCDATE())
    ) as [Open Hours] from complaintregister ) t where t.[Open Hours]>500

但是IST显示了一个错误,列名“开放时间”无效。@roshan:如果这个解决方案对你有效,请养成接受提供的最佳答案的习惯,即解决你问题的答案。这是在StackOverflow上做的正确和礼貌的事情,并激励其他人继续帮助那些寻找答案的人。