MySQL में DATEDIFF() फंक्शन का उपयोग करके दो टाइमस्टैम्प या तारीखों के बीच दिनों का अंतर प्राप्त करें।
सिंटैक्स
SELECT DATEDIFF(date1, date2) AS difference_in_days FROM yourTableName;
नोट: DATEDIFF(date1, date2) = date1 - date2 (date1 बाद की तारीख हो तो धनात्मक)
उदाहरण
टेबल बनाना
mysql> create table DifferenceTimestamp ( -> IssueTime timestamp, ->> DueTime timestamp -> ); Query OK, 0 rows affected (0.66 sec)
रिकॉर्ड डालना
mysql> insert into DifferenceTimestamp values(now(), date_add(now(), interval -30 day)); mysql> insert into DifferenceTimestamp values(now(), date_add(now(), interval -24 day)); mysql> insert into DifferenceTimestamp values(now(), date_add(now(), interval -5 day));
सभी रिकॉर्ड देखना
mysql> select *from DifferenceTimestamp;
+---------------------+---------------------+ | IssueTime | DueTime | +---------------------+---------------------+ | 2018-12-07 17:48:28 | 2018-11-07 17:48:28 | | 2018-12-07 17:48:40 | 2018-11-13 17:48:40 | | 2018-12-07 17:48:46 | 2018-12-02 17:48:46 | +---------------------+---------------------+
दिनों का अंतर निकालना
mysql> SELECT DATEDIFF(IssueTime, DueTime) AS DifferenceInTimestampDays from DifferenceTimestamp;
+---------------------------+ | DifferenceInTimestampDays | +---------------------------+ | 30 | | 24 | | 5 | +---------------------------+
महत्वपूर्ण बिंदु
DATEDIFFकेवल तारीख भाग मानता है, समय भाग नजरअंदाज करता है- परिणाम पूर्णांक होता है (दशमलव नहीं)
- यदि पहला तर्क पहले है, तो परिणाम ऋणात्मक होगा
- NULL इनपुट पर परिणाम NULL होगा
समय भाग सहित सटीक अंतर (सेकंड/मिनट/घंटे)
-- सेकंड में अंतर SELECT TIMESTAMPDIFF(SECOND, DueTime, IssueTime) AS diff_seconds FROM DifferenceTimestamp; -- मिनट में SELECT TIMESTAMPDIFF(MINUTE, DueTime, IssueTime) AS diff_minutes FROM DifferenceTimestamp; -- घंटे में SELECT TIMESTAMPDIFF(HOUR, DueTime, IssueTime) AS diff_hours FROM DifferenceTimestamp; -- दिन में (DATEDIFF के समान लेकिन TIMESTAMPDIFF सिंटैक्स) SELECT TIMESTAMPDIFF(DAY, DueTime, IssueTime) AS diff_days FROM DifferenceTimestamp;
TIMESTAMPDIFF इकाइयाँ
MICROSECOND, SECOND, MINUTE, HOUR, DAY, WEEK, MONTH, QUARTER, YEAR
उपयोग के मामले
- देय तारीख से विलंब दिन गिनना
- उपयोगकर्ता खाता आयु
- सत्र अवधि
- रिपोर्टिंग में समय-श्रृंखला विश्लेषण