मुख्य अंतर
| फ़ंक्शन | लौटाता है | फॉर्मेट | उदाहरण |
|---|---|---|---|
NOW() | वर्तमान दिनांक और समय | YYYY-MM-DD HH:MM:SS | 2018-11-27 15:17:01 |
CURDATE() | केवल वर्तमान दिनांक | YYYY-MM-DD | 2018-11-27 |
CURRENT_TIMESTAMP() | NOW() का पर्याय | YYYY-MM-DD HH:MM:SS | 2018-11-27 15:17:01 |
व्यावहारिक प्रदर्शन
NOW()
mysql> SELECT NOW();
+---------------------+
| now() |
+---------------------+
| 2018-11-27 15:17:01 |
+---------------------+
1 row in set (0.00 sec)
CURDATE()
mysql> SELECT CURDATE();
+------------+
| curdate() |
+------------+
| 2018-11-27 |
+------------+
1 row in set (0.00 sec)
टेबल में उपयोग का उदाहरण
mysql> CREATE TABLE CurrentdateAndNowDemo (
-> Time DATETIME
-> );
Query OK, 0 rows affected (0.82 sec)
mysql> INSERT INTO CurrentdateAndNowDemo VALUES(NOW());
mysql> INSERT INTO CurrentdateAndNowDemo VALUES(CURDATE());
mysql> SELECT * FROM CurrentdateAndNowDemo;
+---------------------+
| Time |
+---------------------+
| 2018-11-27 15:16:32 | -- NOW(): पूरा टाइमस्टैम्प
| 2018-11-27 00:00:00 | -- CURDATE(): समय भाग 00:00:00
+---------------------+
2 rows in set (0.00 sec)
कब कौन सा उपयोग करें?
- NOW() / CURRENT_TIMESTAMP(): जब पूर्ण टाइमस्टैम्प चाहिए (लॉगिंग, ऑडिट, सटीक समय रिकॉर्डिंग)
- CURDATE(): जब केवल दिनांक चाहिए (जन्मदिन, सालगिरह, दिन-आधारित रिपोर्ट)
- CURTIME(): केवल समय चाहिए (HH:MM:SS)
प्रदर्शन नोट
एक ही क्वेरी में एकाधिक बार NOW() कॉल करने पर समान मान लौटाता है (क्वेरी निष्पादन प्रारंभ समय)। SYSDATE() वास्तविक निष्पादन समय देता है।