MySQL-এ দুটি `TIMESTAMP` বা `DATETIME` কলামের পার্থক্য সেকেন্ডে বের করতে `UNIX_TIMESTAMP()` ফাংশন ব্যবহার করুন। এটি যেকোনো টাইমস্ট্যাম্পকে Unix epoch (1970-01-01) থেকে সেকেন্ডে রূপান্তর করে।
সিনট্যাক্স
SELECT UNIX_TIMESTAMP(col1) - UNIX_TIMESTAMP(col2) AS Seconds FROM yourTableName;
ABS() ব্যবহার (নির্ধারিত না থাকলে কোনটি বড়)
SELECT ABS(UNIX_TIMESTAMP(col1) - UNIX_TIMESTAMP(col2)) AS Seconds FROM yourTableName;
উদাহরণ
mysql> CREATE TABLE DifferenceInSeconds (FirstTimestamp TIMESTAMP, SecondTimestamp TIMESTAMP);
mysql> INSERT INTO DifferenceInSeconds VALUES
-> ('2012-12-12 13:16:55','2012-12-12 13:13:55'),
-> ('2014-10-11 12:15:50','2014-10-11 12:13:50'),
-> ('2018-12-14 13:30:53','2018-12-14 13:27:53');
mysql> SELECT UNIX_TIMESTAMP(FirstTimestamp) - UNIX_TIMESTAMP(SecondTimestamp) AS Seconds FROM DifferenceInSeconds;
+---------+
| Seconds |
+---------+
| 180 |
| 120 |
| 180 |
+---------+
-- যদি প্রথম টাইমস্ট্যাম্প ছোট হয়
mysql> INSERT INTO DifferenceInSeconds VALUES ('2018-12-14 13:26:53','2018-12-14 13:31:53');
mysql> SELECT ABS(UNIX_TIMESTAMP(FirstTimestamp) - UNIX_TIMESTAMP(SecondTimestamp)) AS Seconds FROM DifferenceInSeconds;
+---------+
| Seconds |
+---------+
| 180 |
| 120 |
| 180 |
| 300 |
+---------+
টিপস: `TIMESTAMPDIFF(SECOND, col1, col2)` ফাংশনও সরাসরি সেকেন্ড পার্থক্য দেয় এবং আরও পঠনযোগ্য।