nvarchar提取字符串的一部分

时间:2014-06-04 17:39:53

标签: sql sql-server-2008

所以我有一个varchar持有一个事件的持续时间在' HHHH:MM:SS' 所以我希望按小时过滤,所以我想做的只是HHHH, 我正在考虑做一个子串(持续时间,1,4)但是我不知道如何让它停在冒号处,因为我们可以得到少于四个小时,例如' 7: 07:47'或者' 30:01'。任何事都有助于感谢你们!

1 个答案:

答案 0 :(得分:5)

您应该使用TIME数据类型。但无论如何,这是你想要的代码:

DECLARE @YourTime VARCHAR(10)
SET @YourTime = '29:30:01'

SELECT LEFT(@YourTime,CHARINDEX(':',@YourTime,0)-1)