Sql 将Timespan.Ticks转换为varchar

Sql 将Timespan.Ticks转换为varchar,sql,sql-server-2008,Sql,Sql Server 2008,我想将Timespan.Tick转换为SQL Server中存储为Bigint的格式 “00d,00h,00m”作为SQL Server中的varchar 我卡住了。有人能帮我吗?使用此功能: CREATE FUNCTION [dbo].[fun_DateTimeFromTicks] (@tick BIGINT, @referenceDate DATETIME) RETURNS DATETIME WITH SCHEMABINDING AS begin return (sele

我想将Timespan.Tick转换为SQL Server中存储为Bigint的格式 “00d,00h,00m”作为SQL Server中的varchar

我卡住了。有人能帮我吗?

使用此功能:

CREATE FUNCTION [dbo].[fun_DateTimeFromTicks]  
(@tick BIGINT, @referenceDate DATETIME)  
RETURNS DATETIME  
WITH SCHEMABINDING
AS  
begin  
return (select dateadd(ss,@tick / cast(10000000 as bigint),@referenceDate))  
end  
示例用法:

select dbo.[fun_DateTimeFromTicks](125000000000,'1900-01-01')
由于它返回日期时间,您可以根据需要对其进行格式化。

使用此函数:

CREATE FUNCTION [dbo].[fun_DateTimeFromTicks]  
(@tick BIGINT, @referenceDate DATETIME)  
RETURNS DATETIME  
WITH SCHEMABINDING
AS  
begin  
return (select dateadd(ss,@tick / cast(10000000 as bigint),@referenceDate))  
end  
示例用法:

select dbo.[fun_DateTimeFromTicks](125000000000,'1900-01-01')
因为它返回日期时间,所以您可以根据需要对其进行格式化