STR_TO_DATE() फ़ंक्शन का उपयोग
MySQL में विशिष्ट फॉर्मेट की स्ट्रिंग को दिनांक/डेटाटाइम में बदलकर डालने के लिए STR_TO_DATE() फ़ंक्शन का उपयोग करें। दिनांक स्ट्रिंग को सिंगल कोट में लपेटें।
सिंटैक्स
INSERT INTO yourTableName
VALUES(value1, value2, ..., STR_TO_DATE('dateString', 'format'));
MySQL दिनांक फॉर्मेट स्पेसिफायर
| स्पेसिफायर | विवरण | उदाहरण |
|---|---|---|
%Y | 4-अंकीय वर्ष | 2018 |
%y | 2-अंकीय वर्ष | 18 |
%m | महीना (01-12) | 11 |
%d | दिन (01-31) | 26 |
%H | घंटा (00-23) | 14 |
%i | मिनट (00-59) | 30 |
%s | सेकंड (00-59) | 45 |
%M | पूरा महीने का नाम | November |
%W | पूरा सप्ताह-दिन नाम | Monday |
व्यावहारिक उदाहरण
1. टेबल बनाएं
mysql> CREATE TABLE BookDateDemo (
-> BookName VARCHAR(200),
-> BookIssueDate DATETIME
-> );
Query OK, 0 rows affected (0.44 sec)
2. फॉर्मेटेड स्ट्रिंग से दिनांक डालें
mysql> INSERT INTO BookDateDemo VALUES('Let us C', STR_TO_DATE('2018-11-28', '%Y-%m-%d'));
mysql> INSERT INTO BookDateDemo VALUES('The C++ Programming', STR_TO_DATE('2018-11-29', '%Y-%m-%d'));
mysql> INSERT INTO BookDateDemo VALUES('C in Depth', STR_TO_DATE('2018-11-20', '%Y-%m-%d'));
3. परिणाम देखें
mysql> SELECT * FROM BookDateDemo;
+---------------------+---------------------+
| BookName | BookIssueDate |
+---------------------+---------------------+
| Let us C | 2018-11-28 00:00:00 |
| The C++ Programming | 2018-11-29 00:00:00 |
| C in Depth | 2018-11-20 00:00:00 |
+---------------------+---------------------+
3 rows in set (0.00 sec)
अन्य फॉर्मेट उदाहरण
-- DD/MM/YYYY
STR_TO_DATE('26/11/2018', '%d/%m/%Y')
-- MM-DD-YYYY
STR_TO_DATE('11-26-2018', '%m-%d-%Y')
-- Month DD, YYYY
STR_TO_DATE('November 26, 2018', '%M %d, %Y')
-- समय सहित
STR_TO_DATE('2018-11-26 14:30:00', '%Y-%m-%d %H:%i:%s')
महत्वपूर्ण: फॉर्मेट स्ट्रिंग इनपुट स्ट्रिंग के **सटीक पैटर्न** से मेल खानी चाहिए। मिसमैच पर NULL लौटाता है।