iT邦幫忙

0

學習時間統計的問題

  • 分享至 

  • xImage

請教大家
是否可以統計加總下列的學員學習時間呢?

(讓其自動符合時間的單位,例如超過60分鐘的話進位到1小時)
謝謝

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

0
daimom
iT邦新手 2 級 ‧ 2016-04-25 14:48:31

剛寫錯..沒把只有sec的算進去

正確的 SQL server版

<pre class="c" name="code">
declare @t table
(sn int primary key,name varchar(10),totalTime varchar(80))

insert into @t values (1,'Liu','8min20sec'),(2,'Chiu','32min8sec'),(3,'Wang','21sec')

select sum(datepart(mi,'1900/01/01 00:' + replace(
case when charindex('min',totalTime)>0 then REPLACE(totalTime,'min',':') else '0:'+totalTime end,'sec',''))*60+
datepart(s,'1900/01/01 00:' + replace(
case when charindex('min',totalTime)>0 then REPLACE(totalTime,'min',':') else '0:'+totalTime end,'sec','')))
from @t
daimom iT邦新手 2 級 ‧ 2016-04-25 15:03:37 檢舉

忘了轉成 時:分:秒

下面的select 改成

<pre class="c" name="code">
select convert(varchar,dateadd(s,sum(datepart(mi,'1900/01/01 00:' + replace(
case when charindex('min',totalTime)>0 then REPLACE(totalTime,'min',':') else '0:'+totalTime end,'sec',''))*60+
datepart(s,'1900/01/01 00:' + replace(
case when charindex('min',totalTime)>0 then REPLACE(totalTime,'min',':') else '0:'+totalTime end,'sec',''))),0),108)
from @t
ektrontek iT邦研究生 1 級 ‧ 2016-04-25 19:11:30 檢舉

請教大家
如果要在EXCEL直接透過函數算出總時間,要如何做呢?
我試著使用自訂格式的方式,指定為hh:mm:ss,但在時間的加總結果卻是顯示00:00:00, 謝謝

WilliamHuang
iT邦研究生 1 級 ‧ 2016-04-25 20:03:42
【**此則訊息已被站方移除**】

我要發表回答

立即登入回答