1樓:厙曼冬
直接相減是秒數,然後/60/60/24取整就是天,然後小數部分乘24再取整就是小時,然後小數部分乘60再取整就是分,然後小數部分乘60就是秒了
假設本題相減後:
to_date('2013-08-24 16:05:05','yyyy-mm-dd hh24:mi:ss')
-to_date('20132013-08-20 16:40:23','yyyy-mm-dd hh24:mi:ss'))
為x秒,則:
select to_char(floor(x/60/60/24))||'天'||to_char(floor((x/60/60/24-floor(x/60/60/24))*24))||'小時'||..........
2樓:小遊
declare @dmtime int
declare @d varchar(10)
declare @h varchar(10)
declare @m varchar(10)
declare @s varchar(10)
set @dmtime=datediff(second,'2013-08-20 16:40:23','2013-08-24 16:05:05')
--獲取兩個時間段的秒的相差值
set @d=@dmtime/(3600*24)--天數
set @h=(@dmtime-@d*3600*24)/3600--小時
set @m=(@dmtime-@d*3600*24-@h*3600)/60--分鐘
set @s=@dmtime-@d*3600*24-@h*3600-@m*60--秒
select @d+n'天
小時分鐘
秒'效果圖如下:
3樓:匿名使用者
用datediff(second, @startdate, @enddate)計算出時間差是多少秒,再把秒數轉成xx天xx小時xx分xx秒
declare @date1 datetime
declare @date2 datetime
declare @seconds int
select @date1='2013-08-20 16:40:23'
select @date2='2013-08-24 16:05:05'
select @seconds = datediff(second, @date1, @date2)
select cast(@seconds/60/60/24 as varchar(10))+'天'
+ cast(@seconds/60/60%24 as varchar(10)) + '小時'
+ cast(@seconds/60%60 as varchar(10)) + '分鐘'
+ cast(@seconds%60 as varchar(10)) + '秒'
3天23小時24分鐘42秒
4樓:匿名使用者
select extract(day from numtodsinterval(to_date('2013-08-24 16:05:05','yyyy-mm-dd hh24:
mi:ss')-to_date('2013-08-20 16:40:
23','yyyy-mm-dd hh24:mi:ss'),'day')) day,
extract(hour from numtodsinterval(to_date('2013-08-24 16:05:05','yyyy-mm-dd hh24:
mi:ss')-to_date('2013-08-20 16:40:
23','yyyy-mm-dd hh24:mi:ss'),'day')) hour,
extract(minute from numtodsinterval(to_date('2013-08-24 16:05:05','yyyy-mm-dd hh24:
mi:ss')-to_date('2013-08-20 16:40:
23','yyyy-mm-dd hh24:mi:ss'),'day')) minute,
extract(second from numtodsinterval(to_date('2013-08-24 16:05:05','yyyy-mm-dd hh24:
mi:ss')-to_date('2013-08-20 16:40:
23','yyyy-mm-dd hh24:mi:ss'),'day')) second
from dual ;
在sql語句中怎樣計算出兩個日期的差值
5樓:匿名使用者
在sql語句中怎樣計算出兩個日期的差值使用datediff函式
一、函式功能:datediff() 函式返回兩個日期之間的回間隔答時間。
二、語法:datediff(datepart,startdate,enddate)
startdate 和 enddate 引數是合法的日期表示式。
datepart 引數可以是下列的值:
三、例項演示
獲取日期'2008-12-29'與'2008-12-30'之間間隔的天數(參考datepart 引數**,dd表示獲取間隔的天數)
select datediff(dd,'2008-12-29','2008-12-30') as diffdate結果:
6樓:匿名使用者
select datediff(day,cast('2009-06-17' as datetime),cast('2009-06-23' as datetime))
如何簡單地用一句sql算一下兩個日期間相差的月份數
7樓:go有妳真好
使用datedif(日期1,日期2,"m")函式
datedif是excel中的函式,還有以下的使用方法一併教教:
1、簡要說明: 返回兩個日期之間的年\月\日間隔數
2、基本語法: =datedif(開始日期,結束日期,單位**)
3、例項1:
題目: 計算出生日期為1973-4-1人的年齡
公式: =datedif("1973-4-1",today(),"y")
結果: 33
簡要說明 當單位**為"y"時,計算結果是兩個日期間隔的年數.
4、例項2:
題目: 計算日期為1973-4-1和當前日期的間隔月份數.
公式: =datedif("1973-4-1",today(),"m")
結果: 403
簡要說明 當單位**為"m"時,計算結果是兩個日期間隔的月份數.
5、例項3:
題目: 計算日期為1973-4-1和當前日期的間隔天數.
公式: =datedif("1973-4-1",today(),"d")
結果: 12273
簡要說明 當單位**為"d"時,計算結果是兩個日期間隔的天數.
5、例項4:
題目: 計算日期為1973-4-1和當前日期的不計年數的間隔天數.
公式: =datedif("1973-4-1",today(),"yd")
結果: 220
簡要說明 當單位**為"yd"時,計算結果是兩個日期間隔的天數.忽略年數差
5、例項5:
題目: 計算日期為1973-4-1和當前日期的不計月份和年份的間隔天數.
公式: =datedif("1973-4-1",today(),"md")
結果: 6
簡要說明 當單位**為"md"時,計算結果是兩個日期間隔的天數.忽略年數和月份之差
5、例項6:
題目: 計算日期為1973-4-1和當前日期的不計年份的間隔月份數.
公式: =datedif("1973-4-1",today(),"ym")
結果: 7
簡要說明 當單位**為"ym"時,計算結果是兩個日期間隔的月份數.不計相差年數
8樓:普實軟體
示例:sql中months_between(high_date, low_date)
示例:excel中的計算方法例如: 計算日期為1989-4-1和當前日期的間隔月份數.
公式: =datedif("1989-4-1",today(),"m")
簡要說明 當單位**為"m"時,計算結果是兩個日期間隔的月份數。
9樓:鬼谷子教主
select datediff(m, @datefrom, @dateto)
EXCEL怎麼自動計算出兩個日期之間相隔幾個工作日
這個公式可以排除 星期六,星期天 1 1 excel怎麼自動計算出兩個日期之間相隔幾個工作日的解決方法如下 1 用公式可以 networkdays a1,b1,2012 5 1 2 節假日要自己手動列出來,3 networkdays函式要安裝了 分析工具箱 之後才能使用。networkdays a1...
請問mysql的sql中如何計算兩個datetime的差精確
timestampdiff interval,datetime expr1,datetime expr2 返回日期或日期時間表示式datetime expr1 和datetime expr2the 之間的整數差。其結果的單位由interval 引數給出。該引數必須是以下值的其中一個 frac sec...
我吃過兩次緊急避孕藥藥,中間時間間隔是兩個月,但是我每的月經週期都很正常,不是說吃避孕藥對月經週期
你好.這個應該是正常的.吃緊急避孕藥週期不正常是隻偶見的反應.人和人的身體激素不一樣.也就正常.所以不必擔心是假藥 緊急避孕藥,一年最多也只能吃兩次 多次吃對身體有害.也會發胖.女生要愛惜自己.誰說的啊。一般都會告訴你,用了緊急避孕藥後,最好是三個月到半年才讓懷孕。你說影響小嗎?現在很多動物不都是用...