কম্পিউটার টিউটোরিয়াল

MySQL-এ VARCHAR ডেট টাইপের তালিকা থেকে সর্বোচ্চ তারিখ বের করা


STR_TO_DATE() দিয়ে VARCHAR কে DATE এ রূপান্তর করেই MAX() ব্যবহার

যদি তারিখ VARCHAR কলোমে টেক্সট ফরম্যাটে সংরক্ষিত থাকে (যেমন: "Sunday, 11 August 2019"), তবে সরাসরি MAX() কাজ করবে না। STR_TO_DATE() দিয়ে পার্স করে তারপর MAX() ব্যবহার করতে হয়।

টেবিল ও ডেটা

mysql> CREATE TABLE DemoTable (AdmissionDate VARCHAR(100));
mysql> INSERT INTO DemoTable VALUES('Sunday, 11 August 2019'), ('Friday, 18 October 2019'), ('Thursday, 18 July 2019');

সব রেকর্ড

+-------------------------+
| AdmissionDate           |
+-------------------------+
| Sunday, 11 August 2019  |
| Friday, 18 October 2019 |
| Thursday, 18 July 2019  |
+-------------------------+

কোয়েরি: STR_TO_DATE() + MAX()

mysql> SELECT MAX(STR_TO_DATE(AdmissionDate, '%W, %d %M %Y')) AS MaxDate FROM DemoTable;
+------------+
| MaxDate    |
+------------+
| 2019-10-18 |
+------------+

ফরম্যাট স্পেসিফায়ার ব্যাখ্যা

  • %W — পূর্ণ সপ্তাহের নাম (Sunday, Monday...)
  • %d — দিন (01-31)
  • %M — পূর্ণ মাসের নাম (January, February...)
  • %Y — ৪ ডিজিট বছর

টিপস: ফরম্যাট স্ট্রিংটি আপনার ডেটার ফরম্যাটের সাথে সঠিকভাবে মিলতে হয়, অন্যথায় NULL রিটার্ন করবে।

  1. MySQL-এ VARCHAR তারিখ কলামের সাথে বর্তমান তারিখ তুলনা করা

  2. MySQL-এ একটি ডেটের শেষ সেকেন্ড বের করা (INTERVAL অ্যারিথমেটিক)

  3. MySQL-এ নির্দিষ্ট বছরের শুরুর এবং শেষ তারিখ বের করা (YEAR ফাংশন)

  4. MySQL-এ VARCHAR কলাম থেকে সর্বোচ্চ সংখ্যাগত মান বের করা