zoukankan      html  css  js  c++  java
  • SQL Server 两个时间段的差and时间截取到时分

    /*--------------------------时间截取到时分-----------------------------------*/
    
    select Left(CONVERT(varchar(100), '2017-11-24 19:25:30.740', 20),16)--返回2017-11-24 19:25
    
    --单独截取
    select datepart(hour,'2017-11-24 19:25:30.740')--返回小时19
    
    
    /*-----------------两个时间段的差,精确到秒(可用于倒计时)----------------------*/
    
    SELECT DATEDIFF( Second, '2009-8-25 12:15:12', '2009-9-1 7:18:20') --返回相差秒数
    
    SELECT DATEDIFF( Minute, '2009-9-1 6:15:12', '2009-9-1 7:18:20') --返回相差分钟数
    
    SELECT DATEDIFF( Day, '2009-8-25 12:15:12','2009-9-1 7:18:20')--返回相差的天数
    
    SELECT DATEDIFF( Hour, '2009-8-25 12:15:12', '2009-9-1 7:18:20')--返回相差的小时
    
    --求两个时间的相差的分钟数
    --方法一
    SELECT CONVERT(INT,DATEDIFF(Day, '2017-11-24 19:00:00', '2017-11-24 19:01:00')*24*60)
    +CONVERT(INT,DATEDIFF(Hour,'2017-11-24 19:00:00', '2017-11-24 19:01:00')*60)
    +CONVERT(INT,DATEDIFF(Minute, '2017-11-24 19:00:00', '2017-11-24 19:01:00'))
    
    --方法二
    declare @day int --
    declare @hour int  --小时
    declare @min int  --
    declare @sec int  --
    declare @alls int  
    select GETDATE()
    set @alls=datediff(s,'2017-11-24 19:00:00',GETDATE())   --时间1与时间2之间的差(秒)  
    set @day=@alls/86400 --
    set @hour=(@alls-@day*86400)/3600  --小时
    set @min=(@alls-@day*86400-@hour*3600)/60  --
    set @sec=@alls-@day*86400-@hour*3600-@min*60  --
    select CAST(@day as varchar(5))+''
    +CAST(@hour as varchar(2))+'小时'
    +CAST(@min as varchar(2))+''
    +CAST(@sec as varchar(2))+'' cha  
  • 相关阅读:
    mysql总结
    ContOS7 安装 java1.8
    查找
    排序
    线程通信(交替执行)
    死锁(实现)
    Rank Scores
    OpenMP
    聚类的数据量过大的问题
    编译GraphLab出错
  • 原文地址:https://www.cnblogs.com/huyadan/p/7892169.html
Copyright © 2011-2022 走看看