Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 2008 SQL中输入的时间值的时间计算_Sql Server 2008_Tsql_Reporting Services - Fatal编程技术网

Sql server 2008 SQL中输入的时间值的时间计算

Sql server 2008 SQL中输入的时间值的时间计算,sql-server-2008,tsql,reporting-services,Sql Server 2008,Tsql,Reporting Services,我需要帮助计算我的时差。我在论坛上搜索,但不是我需要的。以下是我正在使用的代码:- (convert(varchar(10),([RT_Phase_Time])-(convert(time,'00:30:00')))) 所以I[RT_Phase_Time]的格式是'hh:mm:ss'。我试图得到[RT_Phase_Time]-“00:30:00”之间的差异。请帮忙 在MySQL中,您可以使用TIMEDIFF轻松实现这一点 TIMEDIFF('22:00:00','00:30:00');

我需要帮助计算我的时差。我在论坛上搜索,但不是我需要的。以下是我正在使用的代码:-

    (convert(varchar(10),([RT_Phase_Time])-(convert(time,'00:30:00'))))

所以I[RT_Phase_Time]的格式是'hh:mm:ss'。我试图得到[RT_Phase_Time]-“00:30:00”之间的差异。请帮忙

在MySQL中,您可以使用TIMEDIFF轻松实现这一点

TIMEDIFF('22:00:00','00:30:00');
-- Returns '21:30:00' 

尝试类似的方法,检查BOL for datediff以转换为其他值:

declare @rt_phase_time time
set @rt_phase_time = '12:30:30'

select datediff(ss,cast('00:30:00' as time),@rt_phase_time)

您使用的是mysql还是sql server?我尝试了Timediff,它说Timediff不是内置函数。请确保Timediff和括号之间没有空格。TIMEDIFF不起作用了,还是一样的问题。我用的是这样一个案例。案例RT_Phase_Time<00:30:00然后TIMEDIFF[RT_Phase_Time],'00:30:00'以时差结束您正在运行的mysql版本?使用SQL检查:选择版本。此函数是在MySQL 4.1.1上添加的,我怀疑您使用的版本比此版本旧。我想是的,还有其他方法吗?我的阶段时间声明为varchar。我需要将其转换为时间hh:mm:ss,然后减去我将在sql中硬编码的时间。