nvarchar提取字符串的一部分

fin*_*een 0 sql sql-server-2008

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

Lam*_*mak 5

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

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

SELECT LEFT(@YourTime,CHARINDEX(':',@YourTime,0)-1)
Run Code Online (Sandbox Code Playgroud)