timestampdiff
説明
datetime_expr2
から datetime_expr1
までの間隔を返します。datetime_expr1
と datetime_expr2
は DATE または DATETIME 型である必要があります。
整数結果と間隔の単位は、以下のいずれかでなければなりません:
MILLISECOND (3.2 以降)、SECOND、MINUTE、HOUR、DAY、WEEK、MONTH、または YEAR。
構文
INT TIMESTAMPDIFF(unit,DATETIME datetime_expr1, DATETIME datetime_expr2)
パラメータ
datetime_expr
: 比較したい 2 つの DATE または DATETIME 式。unit
: 時間差の単位。サポートされている単位には MILLISECOND (3.2 以降)、SECOND、MINUTE、HOUR、DAY、WEEK、MONTH、YEAR が含まれます。
戻り値
INT 値を返します。
例
MySQL> SELECT TIMESTAMPDIFF(MONTH,'2003-02-01','2003-05-01');
+--------------------------------------------------------------------+
| timestampdiff(MONTH, '2003-02-01 00:00:00', '2003-05-01 00:00:00') |
+--------------------------------------------------------------------+
| 3 |
+--------------------------------------------------------------------+
MySQL> SELECT TIMESTAMPDIFF(YEAR,'2002-05-01','2001-01-01');
+-------------------------------------------------------------------+
| timestampdiff(YEAR, '2002-05-01 00:00:00', '2001-01-01 00:00:00') |
+-------------------------------------------------------------------+
| -1 |
+-------------------------------------------------------------------+
MySQL> SELECT TIMESTAMPDIFF(MINUTE,'2003-02-01','2003-05-01 12:05:55');
+---------------------------------------------------------------------+
| timestampdiff(MINUTE, '2003-02-01 00:00:00', '2003-05-01 12:05:55') |
+---------------------------------------------------------------------+
| 128885 |
+---------------------------------------------------------------------+
MySQL > SELECT TIMESTAMPDIFF(MILLISECOND,'2003-02-01','2003-05-01');
+--------------------------------------------------------+
| timestampdiff(MILLISECOND, '2003-02-01', '2003-05-01') |
+--------------------------------------------------------+
| 7689600000 |
+--------------------------------------------------------+
キーワード
TIMESTAMPDIFF