Tạo bảng trong MySQL và triển khai TIMESTAMPDIFF()
Hàm TIMESTAMPDIFF() tính toán sự khác biệt giữa hai biểu thức ngày hoặc datetime. Hãy tạo một bảng trước:
mysql> create table DemoTable665(
PunchInTime datetime,
PunchOutTime datetime,
Details INT(11) AS (ABS(TIMESTAMPDIFF(second, PunchInTime, PunchOutTime)))
) ENGINE=MyISAM;
Query OK, 0 rows affected (0.23 sec)
Chèn một số bản ghi vào bảng bằng lệnh insert:
mysql> insert into DemoTable665(PunchInTime, PunchOutTime) values('2019-09-21 9:30:10', '2019-09-21 04:34:56');
Query OK, 1 row affected (0.05 sec)
mysql> insert into DemoTable665(PunchInTime, PunchOutTime) values('2019-11-11 10:00:20', '2019-11-11 05:30:16');
Query OK, 1 row affected (0.04 sec)
Hiển thị tất cả các bản ghi từ bảng bằng câu lệnh select:
mysql> select * from DemoTable665;
Điều này sẽ tạo ra đầu ra sau:
+---------------------+---------------------+---------+ | PunchInTime | PunchOutTime | Details | +---------------------+---------------------+---------+ | 2019-09-21 09:30:10 | 2019-09-21 04:34:56 | 17714 | | 2019-11-11 10:00:20 | 2019-11-11 05:30:16 | 16204 | +---------------------+---------------------+---------+ 2 rows in set (0.00 sec)
Lưu ý: Cột Details là cột được tạo (generated column) tự động tính toán sự chênh lệch theo giây giữa PunchInTime và PunchOutTime.