[前][次][番号順一覧][スレッド一覧]

mysql:2633

From: NAKAJIMA Mutsuki <NAKAJIMA Mutsuki <muc@xxxxxxxxxx>>
Date: Sat, 21 Oct 2000 18:54:26 +0900
Subject: [mysql 02633] Re: datetime - datetime

中嶋です。

From: Hiroyuki Sato <hiro@xxxxxxxxxx>
Date: Sat, 21 Oct 2000 16:59:38 +0900
> 質問 2.
> 各レコードのdate1からdate2までの時間の差分を求め
> その総計を計算し、人が見てわかりやすい表示をしたいのですが
> なにか良い方法はありませんでしょうか?
> 計算はSQLで行ないたいと考えています。
> 
> 一つ考えたのは
> つぎのようなSQLを実行すると
> mysql> select sum(date2 - date1) from date_test
>     -> go
> +--------------------+
> | sum(date2 - date1) |
> +--------------------+
> |            1355959 |
> +--------------------+
> 1 row in set (0.00 sec)
> 
> と表示されるので、これをよりわかりやすく
> 例えば2 day 11:59:59
> というふうに表示する方法がないかと思っています。

datetime - datetimeのような演算を使用するよりも、いったん
timestamp型に変換してから演算すべきでしょう。以下のように。

select sum(unix_timestamp(date2)-unix_timestamp(date1)) 
       from date_test;

また、これをtimeに変換するために、

select sec_to_time(sum(unix_timestamp(date2)-unix_timestamp(date1)))
       from date_test;

を実行すれば、正確な時間差の累計が出ると思います。

--
NAKAJIMA Mutsuki(muc@xxxxxxxxxx, http://www.isr.co.jp/~muc)

[前][次][番号順一覧][スレッド一覧]

      2630 2000-10-21 16:59 [Hiroyuki Sato <hiro@] datetime - datetime                     
->    2633 2000-10-21 18:54 ┗[NAKAJIMA Mutsuki <mu]                                       
      2642 2000-10-23 10:20  ┗[Hiroyuki Sato <hiro@]