SQL時分秒轉為秒

2022-09-15 21:39:21 字數 2758 閱讀 8740

declare @sql varchar(20)

set @sql='37:02:10'

--test--

select substring(@sql,0,charindex(':',left(@sql,3)))

select cast(substring(@sql,0,charindex(':',left(@sql,3))) as int)*3600

+cast(substring(right(@sql,5),0,charindex(':',right(@sql,5))) as int)*60

+substring(right(@sql,5),charindex(':',right(@sql,5))+1,len(right(@sql,5))-charindex(':',right(@sql,5)))

--end test ----

declare @i int

set @i=133330

select cast(@i/3600 as varchar)

+':'+

case when len(@i%3600/60)=1 then '0'+cast(@i%3600/60 as varchar) else cast(@i%60/60 as varchar) end

+':'+

case when len(@i%60)=1 then '0'+cast(@i%60 as varchar) else cast(@i%60 as varchar) end

/*37:02:10

*/declare @sql varchar(20)

set @sql='37:02:10'

--select substring(@sql,0,charindex(':',left(@sql,3)))

select cast(substring(@sql,0,charindex(':',left(@sql,3))) as int)*3600

+cast(substring(right(@sql,5),0,charindex(':',right(@sql,5))) as int)*60

+substring(right(@sql,5),charindex(':',right(@sql,5))+1,len(right(@sql,5))-charindex(':',right(@sql,5)))

由字串轉化為標準時間

sql server將字串轉換為日期(2006-08-15 10:36:36)** 分類: 技巧程式 

在sql server中要將字串轉為日期比如20060815104235轉換為2006-08-15 10:42:35。用cast和convert都提示型別轉換錯誤,cast和convert都需要對應的日期時間格式才能轉換。抓耳撓腮著急之時,一好友給了個函式,結果ok!

set ansi_nulls on

set quoted_identifier on

go/*

fun  : 將字串轉換為時間格式

author  : yl

create time : 2005-7-23

*/alter function [dbo].[funstringtodatetime]

(@strtime varchar(20))  --字串形式的時間。格式:yyyymmddhhmiss --> yyyy-mm-dd hh:mi:ss

returns datetime

asbegin

declare @strtmp  as varchar(20)

set @strtime = ltrim(rtrim(@strtime))

set @strtmp = substring(@strtime, 1, 4)    -- "yyyy"

set @strtmp = @strtmp + '-'     -- "yyyy-"

set @strtmp = @strtmp + substring(@strtime, 5, 2)  -- "yyyy-mm"

set @strtmp = @strtmp + '-'     -- "yyyy-mm-"

set @strtmp = @strtmp + substring(@strtime, 7, 2)  -- "yyyy-mm-dd"

set @strtmp = @strtmp + ' '     -- "yyyy-mm-dd "

set @strtmp = @strtmp + substring(@strtime, 9, 2)  -- "yyyy-mm-dd hh"

set @strtmp = @strtmp + ':'     -- "yyyy-mm-dd hh:"

set @strtmp = @strtmp + substring(@strtime, 11, 2)  -- "yyyy-mm-dd hh:mi"

set @strtmp = @strtmp + ':'     -- "yyyy-mm-dd hh:mi:"

set @strtmp = @strtmp + substring(@strtime, 13, 2)  -- "yyyy-mm-dd hh:mi:ss"

return cast(@strtmp as datetime)

end如果是這樣的乙個字串"2023年1月2日",用sql語句轉換成"2000-1-2"的標準日期格式

select replace(replace(replace('2023年1月2日','年','-'),'月','-'),'日','')

select replace(replace(replace(欄位名,'年','-'),'月','-'),'日','') from table1

php 時分秒轉為秒,秒轉化為天時分秒

一 分秒轉為秒 獲取時分秒,轉化成秒 8小時5分5秒 function turnsecond str elseelse num hour 3600 minute 60 second return num 二 秒轉化為天時分秒 轉化時間為 天時分秒 function timesecond second...

秒轉為時分秒的oracle函式

create or replace function gettimedesc seconds in integer return varchar2 is result varchar2 100 begin result 1t if seconds 24 3600 then select to cha...

sql時間轉換時分秒 SQL時分秒之間相互轉換

以秒為單位轉換 我們先來宣告乙個時間單位是秒的變數,方面下面用 declare a int 2000 變數 a,2000秒 1 將秒轉換成時分秒格式 select convert varchar 10 a 3600 時 convert varchar 10 a 3600 60 分 convert v...