如何将PARSE与.net时间戳字符串一起用作SQL中的时间?

问题描述 投票:0回答:1

我的数据库中有.NET TimeSpan字符串。我想将它们解析为SQL查询中的时间。

在下面的示例中,我正在尝试转换值为3天的时间戳记字符串。

SELECT PARSE('3.00:00:00.0000000' AS time)

由于以下错误而失败:

使用文化区域``将字符串值'3.00:00:00.0000000'转换为数据类型时间时出错。

使用文化完全没有帮助。

根据documentation,我应该能够这样做。

time TimeSpan DateTimeStyles.AllowWhiteSpaces | DateTimeStyles.AssumeUniversal

目前我没有在线找到任何提示。

sql-server sqlclr
1个回答
0
投票

一种方法是PARSENAME。下面的示例忽略Timespan字符串中的days部分,仅返回时间部分。

SELECT PARSE(PARSENAME('3.00:00:00.0000000',2)+'.'+PARSENAME('3.00:00:00.0000000',1) AS time)
© www.soinside.com 2019 - 2024. All rights reserved.