You haven't mentioned it, but I believe your database is MySQL. (At least it's not Oracle, which behaves
way differently than this.)
When you add a number to a DATETIME value in MySQL, it gets converted to a
numeric double value, with a microseconds part of
.000000, i.e. YYYYMMDDHHMISS.000000.
In this numeric value, an increase of 100 corresponds to an interval of 1 minute of the datetime. You can test that by casting such a numeric value back to DATETIME. (If it is invalid, the CAST will return NULL.)
Code:
mysql>
mysql>
mysql> select d, d+0 d0, d+60 d2, d+100 d4,
-> cast(d+60 as datetime) c1,
-> cast(d+100 as datetime) c2
-> from (select cast('2009-01-01 10:11:12' as datetime) d) t;
+---------------------+-----------------------+-----------------------+-----------------------+------+---------------------+
| d | d0 | d2 | d4 | c1 | c2 |
+---------------------+-----------------------+-----------------------+-----------------------+------+---------------------+
| 2009-01-01 10:11:12 | 20090101101112.000000 | 20090101101172.000000 | 20090101101212.000000 | NULL | 2009-01-01 10:12:12 |
+---------------------+-----------------------+-----------------------+-----------------------+------+---------------------+
1 row in set, 1 warning (0.00 sec)
mysql>
mysql>