一條字串轉換成秒函式

2022-01-30 09:27:34 字數 1008 閱讀 2758

今天一朋友問這樣的問題:

如:一張表中有一列資料為

40秒1分30秒

3小時45分29秒

現在上面的幾行轉換成可統計的資料,為了統計方便可以都轉換成秒。

解決方法如下:

gocreate function stringtosecond(@string nvarchar(100))

returns int

begin

declare @return int

declare @i int

set @i=charindex('小時',@string)

set @return=0

if @i>=1

select @return=left(@string,@i-1)*60*60,@string=right(@string,len(@string)-@i-1)

set @i=charindex('分',@string)

if @i>=1

select @return=@return+left(@string,@i-1)*60,@string=right(@string,len(@string)-@i)

set @i=charindex('秒',@string)

if @i>=1

select @return=@return+left(@string,@i-1),@string=right(@string,@i)

return @return

endgo

declare @d nvarchar(30)

set @d='3小時45分29秒'

select dbo.stringtosecond(@d)

set @d='1分30秒'

select dbo.stringtosecond(@d)

set @d='40秒'

select dbo.stringtosecond(@d)

godrop function stringtosecond

一條字串轉換成秒函式

今天一朋友問這樣的問題 如 一張表中有一列資料為 40秒1分30秒 3小時45分29秒 現在上面的幾行轉換成可統計的資料,為了統計方便可以都轉換成秒。解決方法如下 gocreate function stringtosecond string nvarchar 100 returns int beg...

字串轉換成整數

題目詳情 輸入乙個表示整數的字串,把該字串轉換成整數並輸出,例如輸入字串 345 則輸出整數345。請完成函式strtoint,實現字串轉換成整數的功能。友情提醒 提交 之前,請複查下你的程式,比如當給的字串是如左邊所示的時候,有考慮到麼?當然,它們各自對應的正確輸出如右邊所示 假定你是在32位系統...

字串轉換成整數

輸入乙個表示整數的字串,把該字串轉換成整數並輸出,例如輸入字串 345 則輸出整數345。需要考慮的問題 1.由於整數可能不僅僅之含有數字,還有可能以 或者 開頭,表示整數的正負。2.處理非法輸入。在使用指標之前判斷這個指標是不是為空。3.輸入的字串中可能含有不是數字的字元。4.最後乙個需要考慮的問...