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

MySQL में VARCHAR को DATE में कैसे कनवर्ट करें?


VARCHAR को DATE में कनवर्ट करने के लिए DATE_FORMAT() और STR_TO_DATE() फ़ंक्शन का उपयोग करें।

सिंटैक्स

SELECT DATE_FORMAT(STR_TO_DATE(yourColumnName, 'yourFormatSpecifier'), 
       'yourDateFormatSpecifier') AS anyVariableName 
FROM yourTableName;

उदाहरण के साथ समझें

सबसे पहले एक टेबल बनाते हैं:

mysql> CREATE TABLE VarcharToDate (
    -> Id INT NOT NULL AUTO_INCREMENT,
    -> Created_Time VARCHAR(100),
    -> PRIMARY KEY(Id)
    -> ); 
Query OK, 0 rows affected (1.10 sec)

रिकॉर्ड डालें

mysql> INSERT INTO VarcharToDate(Created_Time) VALUES('12/1/2016'); 
Query OK, 1 row affected (0.14 sec)
mysql> INSERT INTO VarcharToDate(Created_Time) VALUES('14/3/2017'); 
Query OK, 1 row affected (0.18 sec)
mysql> INSERT INTO VarcharToDate(Created_Time) VALUES('15/3/2018'); 
Query OK, 1 row affected (0.21 sec)
mysql> INSERT INTO VarcharToDate(Created_Time) VALUES('19/5/2011'); 
Query OK, 1 row affected (0.18 sec)
mysql> INSERT INTO VarcharToDate(Created_Time) VALUES('19/8/2019'); 
Query OK, 1 row affected (0.15 sec)
mysql> INSERT INTO VarcharToDate(Created_Time) VALUES('21/11/2020'); 
Query OK, 1 row affected (0.23 sec)

सभी रिकॉर्ड देखें

mysql> SELECT * FROM VarcharToDate;

आउटपुट

+----+--------------+
| Id | Created_Time |
+----+--------------+
| 1  | 12/1/2016    |
| 2  | 14/3/2017    |
| 3  | 15/3/2018    |
| 4  | 19/5/2011    |
| 5  | 19/8/2019    |
| 6  | 21/11/2020   |
+----+--------------+
6 rows in set (0.00 sec)

VARCHAR को DATE में कनवर्ट करने की क्वेरी

पहले STR_TO_DATE() का उपयोग करके डेट में कनवर्ट करें, फिर DATE_FORMAT() से मनचाहा फॉर्मेट दें:

mysql> SELECT DATE_FORMAT(STR_TO_DATE(Created_Time, '%d/%m/%Y'), '%Y-%m-%d') 
    -> AS Date FROM VarcharToDate;

आउटपुट

+------------+
| Date       |
+------------+
| 2016-01-12 |
| 2017-03-14 |
| 2018-03-15 |
| 2011-05-19 |
| 2019-08-19 |
| 2020-11-21 |
+------------+
6 rows in set (0.00 sec)

फॉर्मेट स्पेसिफायर: %d = दिन, %m = महीना, %Y = 4 अंकों का वर्ष।

  1. - MySQL में FROM_UNIXTIME() और MONTH() का उपयोग करके टाइमस्टैम्प को महीने में परिवर्तित करना

    MySQL में UNIX टाइमस्टैम्प से महीना निकालना UNIX टाइमस्टैम्प (1970-01-01 से सेकंड) को महीने में परिवर्तित करने के लिए, पहले FROM_UNIXTIME() का उपयोग करके DATETIME में परिवर्तित करें, फिर MONTH() का उपयोग करके महीना निकालें। उदाहरण: टाइमस्टैम्प से महीना निकालना SELECT * FROM DemoTable1457; +-------

  1. - MySQL में VARCHAR डेटा को DATE फॉर्मेट में बदलें

    STR_TO_DATE() से स्ट्रिंग को MySQL डेट फॉर्मेट में कनवर्ट करें VARCHAR कॉलम में संग्रहीत तारीख स्ट्रिंग (जैसे 31/01/2015) को MySQL DATE फॉर्मेट (YYYY-MM-DD) में बदलने के लिए STR_TO_DATE() का उपयोग करें। टेबल बनाएं और डेटा डालें: mysql> create table DemoTable1989 ( DueDate varchar(20) ); Query OK,

  1. - MySQL में STR_TO_DATE() से तारीख फॉर्मेट बदलें

    VARCHAR तारीख-स्ट्रिंग को MySQL DATETIME में कनवर्ट करें 12/10/2019 12:34:00 जैसे स्ट्रिंग को मान्य DATETIME में बदलने के लिए STR_TO_DATE() का उपयोग करें। टेबल बनाएं और डेटा डालें: mysql> create table DemoTable2010 ( DueDate varchar(20) ); Query OK, 0 rows affected (0.68 sec) mysql> insert int