Code Day's Night

ichikawayのブログ

SQLでdatetimeの差を秒の整数で取得

MySQLのDATETIMEカラムの差を秒で取得する方法

startとendというカラムがDATETIMEだった場合、時間の差は

select TIMEDIFF(`end`, `start`) 

で取得できる。この時、 00:12:13のようなフォーマットで返る

これをさらにtime_to_sec関数で整数値の秒にする。

select TIME_TO_SEC( TIMEDIFF(`end`, `start`) ) 

この時間の平均が出したければ、下記のようにすればよい

select AVG( TIME_TO_SEC( TIMEDIFF(`end`, `start`) ) )