zoukankan      html  css  js  c++  java
  • SQL时分秒转为秒

    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
    AS
    Begin
     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
     
    如果是这样的一个字符串"2000年1月2日",用sql语句转换成"2000-1-2"的标准日期格式
    select Replace(Replace(Replace('2000年1月2日','年','-'),'月','-'),'日','')
    select Replace(Replace(Replace(字段名,'年','-'),'月','-'),'日','') from table1


    /*
    CONVERT(NVARCHAR(10), CAST([UPTIME] AS DATETIME),8)
    */
    ————————————————
    版权声明:本文为CSDN博主「o0wufan0o」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/o0wufan0o/article/details/17376757

  • 相关阅读:
    docker 之 docker-compose 初探
    docker 之 .net core 镜像制作
    docker 之 registry私有仓库(harbor)
    ASP.NET Core 学习笔记(认证授权)
    ASP.NET Core 学习笔记(http请求处理)
    ASP.NET Core 学习笔记(依赖注入)
    Linux基础编程之网络编程TCP实例
    功能包和CMakeLists.txt
    ROS的主节点(名称服务器)---roscore
    关于ros开发
  • 原文地址:https://www.cnblogs.com/huangtaiyi/p/11475683.html
Copyright © 2011-2022 走看看