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

MySQL में DateTime कॉलम की तुलना केवल तारीख से कैसे करें?

DATE() फंक्शन का उपयोग करके समय भाग को अनदेखा करना

जब आपके पास DATETIME कॉलम हो और आप केवल तारीख के आधार पर फ़िल्टर करना चाहते हों, तो DATE() फंक्शन का उपयोग करें।

सिंटैक्स

SELECT * FROM yourTableName WHERE DATE(yourColumnName) = 'yourDateValue';

उदाहरण

1. टेबल बनाना

mysql> CREATE TABLE DemoTable (
    ArrivalTime DATETIME
);
Query OK, 0 rows affected (0.74 sec)

2. डेटा डालना

mysql> INSERT INTO DemoTable VALUES('2019-01-31 02:34:56');
mysql> INSERT INTO DemoTable VALUES('2019-04-09 18:20:58');
mysql> INSERT INTO DemoTable VALUES('2019-05-11 19:45:23');
mysql> INSERT INTO DemoTable VALUES('2019-02-03 21:10:02');

3. सभी रिकॉर्ड्स देखना

mysql> SELECT * FROM DemoTable;
+---------------------+
| ArrivalTime         |
+---------------------+
| 2019-01-31 02:34:56 |
| 2019-04-09 18:20:58 |
| 2019-05-11 19:45:23 |
| 2019-02-03 21:10:02 |
+---------------------+
4 rows in set (0.00 sec)

4. केवल तारीख के आधार पर फ़िल्टर करना

mysql> SELECT * FROM DemoTable WHERE DATE(ArrivalTime) = '2019-04-09';
+---------------------+
| ArrivalTime         |
+---------------------+
| 2019-04-09 18:20:58 |
+---------------------+
1 row in set (0.00 sec)

बेहतर प्रदर्शन के लिए वैकल्पिक तरीका

बड़े टेबल पर DATE() फंक्शन इंडेक्स का उपयोग नहीं कर पाता। बेहतर प्रदर्शन के लिए रेंज क्वेरी का उपयोग करें:

SELECT * FROM DemoTable 
WHERE ArrivalTime >= '2019-04-09 00:00:00' 
AND ArrivalTime < '2019-04-10 00:00:00';

महत्वपूर्ण बिंदु

  • DATE() फंक्शन DATETIME से केवल तारीख भाग निकालता है
  • तारीख का फॉर्मेट 'YYYY-MM-DD' होना चाहिए
  • बड़े डेटासेट के लिए रेंज क्वेरी अधिक कुशल है
  1. - MySQL में DATE_ADD() का उपयोग करके DATE प्रकार के कॉलम को अपडेट करना

    MySQL DATE_ADD() के साथ दिनांक कॉलम अपडेट करना MySQL का DATE_ADD() फ़ंक्शन एक दिनांक/दिनांक-समय मान में एक समय अंतराल जोड़ता है। इसका उपयोग UPDATE के साथ मौजूदा दिनांक रिकॉर्ड्स को स्थानांतरित करने के लिए किया जाता है। उदाहरण: ज्वाइनिंग तिथि में 1 वर्ष जोड़ना SELECT * FROM DemoTable1451; +--------

  1. Java के साथ MySQL टेबल में केवल एक कॉलम कैसे इन्सर्ट करें? Java के साथ MySQL टेबल में केवल एक कॉलम कैसे इन्सर्ट करें?

    Java-MySQL कनेक्शन कोड में एक कॉलम इन्सर्ट करने के लिए INSERT INTO स्टेटमेंट का उपयोग करें। आइए पहले एक टेबल बनाते हैं: mysql> create table DemoTable -> ( -> Name varchar(20) -> ); Query OK, 0 rows affected (0.54 sec) MySQL टेबल में केवल एक कॉलम इन्सर्ट करने का जावा कोड यहाँ है। उदाहरण

  1. - MySQL में ADDTIME() से DATETIME कॉलम में समय जोड़ें

    MySQL का ADDTIME(datetime, time) फ़ंक्शन एक DATETIME/TIME मान में समय अंतराल जोड़ता है। टेबल बनाएं mysql> CREATE TABLE DemoTable1848 (ShippingDate DATETIME); डेटा डालें mysql> INSERT INTO DemoTable1848 VALUES(2019-10-11 12:30:45); mysql> INSERT INTO DemoTable1848 VALUES(2019-01-12 10:00:0