संपादित करें: आप MySQL का किस संस्करण का उपयोग कर रहे हैं? यह कम से कम 5.0.22 पर ठीक काम करता है। मैंने अभी यह प्रश्न चलाया है। यहां देखें
mysql> SELECT TIME_TO_SEC(TIMEDIFF('2000:01:01 00:00:00', '2001:01:01 00:00:00'));
+---------------------------------------------------------------------+
| TIME_TO_SEC(TIMEDIFF('2000:01:01 00:00:00', '2001:01:01 00:00:00')) |
+---------------------------------------------------------------------+
| -31622400 |
+---------------------------------------------------------------------+
1 row in set (0.00 sec)
क्या आपने यहां देखें ? यह छंटनी समस्या हो सकती है क्योंकि समय सीमा आपके दिनांक अंतर से बहुत छोटी है।
मूल उत्तर
इसका इस्तेमाल करें
SELECT TIMESTAMPDIFF(SECOND,'2000:01:01 00:00:00', '2001:01:01 00:00:00');
+--------------------------------------------------------------------+
| TIMESTAMPDIFF(SECOND,'2000:01:01 00:00:00', '2001:01:01 00:00:00') |
+--------------------------------------------------------------------+
| 31622400 |
+--------------------------------------------------------------------+
समस्या यह है कि आप नकारात्मक समय को सेकंड-इन-सेकंड में बदलने की कोशिश कर रहे हैं। चरों की अदला-बदली से काम चल जाएगा।
SELECT TIME_TO_SEC(TIMEDIFF('2001:01:01 00:00:00','2000:01:01 00:00:00'));
+--------------------------------------------------------------------+
| TIME_TO_SEC(TIMEDIFF('2001:01:01 00:00:00','2000:01:01 00:00:00')) |
+--------------------------------------------------------------------+
| 31622400 |
+--------------------------------------------------------------------+