আপনি varchar কে তারিখে রূপান্তর করতে date_format() ব্যবহার করতে পারেন। সিনট্যাক্স নিম্নরূপ -
yourTableName থেকে যেকোনো পরিবর্তনশীল নাম হিসেবে DATE_FORMAT(STR_TO_DATE(yourColumnName, 'yourFormatSpecifier'), 'yourDateFormatSpecifier') নির্বাচন করুন;
উপরের সিনট্যাক্স বুঝতে, আসুন একটি টেবিল তৈরি করি। একটি টেবিল তৈরি করার প্রশ্নটি নিম্নরূপ -
mysql> সারণী তৈরি করুন VarcharToDate -> ( -> Id int NULL AUTO_INCREMENT, -> Created_Time varchar(100), -> PRIMARY KEY(Id) -> );কোয়েরি ঠিক আছে, 0 সারি প্রভাবিত (1.10 সেকেন্ড)পূর্বে>সন্নিবেশ কমান্ড ব্যবহার করে টেবিলে কিছু রেকর্ড সন্নিবেশ করান। প্রশ্নটি নিম্নরূপ -
mysql> VarcharToDate(Created_Time) মানগুলিতে সন্নিবেশ করান;কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.18 সেকেন্ড)mysql> VarcharToDate(Created_Time) মানগুলিতে সন্নিবেশ করান '19/5/2011');কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.18 সেকেন্ড)mysql> সন্নিবেশ করান ভার্চারটোডেট(তৈরি_সময়) মান ('19/8/2019'); কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.15 সেকেন্ড)mysql> সন্নিবেশ VarcharToDate(Created_Time) মান('21/11/2020'); কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.23 সেকেন্ড)সিলেক্ট স্টেটমেন্ট ব্যবহার করে টেবিল থেকে সমস্ত রেকর্ড প্রদর্শন করুন। প্রশ্নটি নিম্নরূপ -
mysql> VarcharToDate থেকে *নির্বাচন করুন;+----+---------------+| আইডি | তৈরি_সময় |+------+---------------+| 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 সারি সেটে (0.00 সেকেন্ড)এখানে varchar কে তারিখে রূপান্তর করার প্রশ্ন রয়েছে। প্রথমে, তারিখে রূপান্তর করতে আপনাকে str_to_date() ফাংশন ব্যবহার করতে হবে। তারপরে date_format() ব্যবহার করুন প্রকৃত তারিখ দিতে −
mysql> VarcharToDate থেকে তারিখ হিসাবে date_format(str_to_date(Created_Time, '%d/%m/%Y'), '%Y-%m-%d') নির্বাচন করুন;নিচের আউটপুট −
<প্রে>+------------+| তারিখ |+------------+| 2016-01-12 || 2017-03-14 || 2018-03-15 || 2011-05-19 || 2019-08-19 || 2020-11-21 |+------------+6 সারি সেটে (0.00 সেকেন্ড)