2

私の質問:

 SELECT (
 `total_hours`
)
FROM work_details
WHERE  `employee_id` =  '28'
AND DATE
BETWEEN  '2012-02-01'
AND  '2012-02-01'

LIMIT 0 , 30

//データベーステーブルwork_detailsから特定の日付に特定の従業員の合計労働時間を要します

結果:

total_hours
            02:27:29
            00:13:56
            03:03:49
            00:00:03
            00:30:20
            01:04:13

//結果は、従業員が特定の日付で働いた時間を示します。特定の日付の合計労働時間を見つけるには、これらの値の合計を取得する必要があります。

フィールドでこれらの値の合計を取得する方法???

sum(total_hours)を使用すると、結果は次のようになります。

sum( total_hours ) 
67870 

それは正しくありません。時間タイプ自体で必要です。

そして、もう1つヘルプが必要です。このクエリは、BETWEEN句に同じ日付を指定したために機能しました。

DATE
    BETWEEN  '2012-02-01'
    AND  '2012-02-01'

しかし、私は与えられた範囲での総労働時間を計算する必要があります、例えば

DATE
    BETWEEN  '2012-02-01'
    AND  '2012-02-29'

特定の日付には複数の合計時間が入力されているため、個別の日ごとに合計時間を取得する必要があります。ヘルプ??

4

1 に答える 1

4

これを試してください(ここから取得):

SELECT SEC_TO_TIME(SUM(TIME_TO_SEC(`total_hours`))) ... -- rest of your query
于 2012-06-20T13:50:08.103 に答える