स्ट्रिंग कॉलम में संग्रहीत दिनांक की तुलना वर्तमान दिनांक से करने के लिए STR_TO_DATE() से पार्स करें और CURDATE() से तुलना करें।
सिंटैक्स
SELECT * FROM टेबल_नाम WHERE STR_TO_DATE(कॉलम_नाम, 'फॉर्मेट_स्पेसिफायर') = CURDATE();
उदाहरण: 'DD/MM/YYYY' प्रारूप में दिनांक
1. टेबल बनाएं (स्ट्रिंग कॉलम)
mysql> CREATE TABLE DemoTable (
-> JoiningDate VARCHAR(40)
-> );
2. डेटा डालें
mysql> INSERT INTO DemoTable VALUES('27/10/2017');
mysql> INSERT INTO DemoTable VALUES('27/10/2018');
mysql> INSERT INTO DemoTable VALUES('27/10/2019'); -- आज की दिनांक मान लें
mysql> INSERT INTO DemoTable VALUES('27/10/2020');
3. वर्तमान दिनांक वाले रिकॉर्ड ढूंढें
mysql> SELECT * FROM DemoTable
-> WHERE STR_TO_DATE(JoiningDate, '%d/%m/%Y') = CURDATE();
4. परिणाम (यदि आज 27/10/2019 है)
+-------------+ | JoiningDate | +-------------+ | 27/10/2019 | +-------------+
दिनांक फॉर्मेट स्पेसिफायर
| स्पेसिफायर | अर्थ | उदाहरण |
|---|---|---|
| %d | दिन (01-31) | 27 |
| %m | महीना (01-12) | 10 |
| %Y | वर्ष (4 अंक) | 2019 |
| %y | वर्ष (2 अंक) | 19 |
| %H | घंटा (00-23) | 14 |
| %i | मिनट (00-59) | 30 |
| %s | सेकंड (00-59) | 45 |
सामान्य प्रारूप
'%Y-%m-%d'- 2019-10-27'%d/%m/%Y'- 27/10/2019'%m/%d/%Y'- 10/27/2019'%Y-%m-%d %H:%i:%s'- 2019-10-27 14:30:45
सर्वोत्तम अभ्यास
दिनांक डेटा के लिए हमेशा DATE, DATETIME, या TIMESTAMP डेटा टाइप का उपयोग करें। स्ट्रिंग संग्रहण तुलना को धीमा और त्रुटि-प्रवण बनाता है।