6

SQLServerに列名があるテーブルがあります TimeSpent Datatype Varchar(25)。基本的にTimeをHH:MMFormatとして保存します。要件に従って、実際の時間を分単位で表示する必要があります。つまり、01:00で60、01:30->90になります。SQLServer2008でクエリを記述して、Varchar(HH: MM)をMinutes(integer)に変換します。

4

3 に答える 3

15

試す

SELECT LTRIM(DATEDIFF(MINUTE, 0, TimeSpent)) 
  FROM yourtable

与えられた

| TIMESPENT |
-------------
|     00:12 |
|     01:05 |
|     10:00 |

出力:

| MINUTES |
-----------
|      12 |
|      65 |
|     600 |

これがSQLFiddleです

于 2013-03-21T04:58:33.090 に答える
2

これで問題が解決します。SQLFiddleを参照してください


select cast(left(TimeSpent, charindex(':',TimeSpent,0)-1) as int)*60+
       cast(right(TimeSpent, len(TimeSpent)-charindex(':',TimeSpent, 0)) as int)
from test

于 2013-03-21T06:00:43.417 に答える