Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MySQL

MySQL में STR_TO_DATE और CURDATE से वर्तमान दिनांक वाले रिकॉर्ड ढूंढें

स्ट्रिंग कॉलम में संग्रहीत दिनांक की तुलना वर्तमान दिनांक से करने के लिए 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 डेटा टाइप का उपयोग करें। स्ट्रिंग संग्रहण तुलना को धीमा और त्रुटि-प्रवण बनाता है।

  1. - MySQL में ग्रुपिंग के साथ सेलेक्ट और सम?

    सम करने के लिए एग्रीगेट फंक्शन SUM() का उपयोग करें। इसके साथ MySQL GROUP BY का उपयोग करके ग्रुप करें। आइए पहले एक टेबल बनाते हैं: mysql> create table DemoTable -> ( -> ProductName varchar(20), -> ProductQuantity int, -> ProductPrice int -> ); Query OK, 0 rows affected (0.63 sec) इ

  1. - MySQL में NOW() से वर्तमान दिनांक से पहले की तिथि वाले रिकॉर्ड चुनें

    WHERE date_column < NOW() या CURDATE() का उपयोग करके वर्तमान दिनांक/समय से पहले की तिथि वाले रिकॉर्ड चुनें। टेबल बनाएं mysql> CREATE TABLE DemoTable1877 (DueDate DATETIME); डेटा डालें mysql> INSERT INTO DemoTable1877 VALUES(2019-12-10), (2019-12-05), (2019-12-07), (2019-12-09); वर्तमान दिना

  1. - MySQL में वर्तमान तारीख और अगले दिन के रिकॉर्ड कैसे चुनें?

    MySQL में शिपिंग/डिलीवरी तारीख के आधार पर आज और कल के रिकॉर्ड चुनने के लिए, CURDATE() फंक्शन के साथ IN ऑपरेटर या रेंज तुलना का उपयोग करें। यह डैशबोर्ड, नोटिफिकेशन, और शेड्यूलिंग क्वेरीज़ के लिए सामान्य आवश्यकता है। उदाहरण: आज और कल की शिपिंग वाले ग्राहक वर्तमान तारीख जांचें: mysql> SELECT CURD