কম্পিউটার

কিভাবে MySQL এ তারিখ অনুসারে অর্ডার করবেন কিন্তু শেষে খালি তারিখ রাখবেন?


তারিখ অনুসারে অর্ডার করুন এবং ORDER BY ক্লজ এবং IS NULL সম্পত্তির সাহায্যে শেষের খালি তারিখগুলি সেট করুন। সিনট্যাক্স নিম্নরূপ:

আপনার টেবিলের নামক্রম থেকে *নির্বাচন করুন (আপনার তারিখের নামটি শূন্য), আপনার তারিখের কলামের নাম DESC;

উপরের সিনট্যাক্সে, আমরা সেই তারিখের পরে প্রথমে NULL সাজাব। উপরের সিনট্যাক্স বুঝতে, আসুন একটি টেবিল তৈরি করি। একটি টেবিল তৈরি করার প্রশ্নটি নিম্নরূপ:

mysql> টেবিল তৈরি করুন DateColumnWithNullDemo -> ( -> Id int NULL AUTO_INCREMENT, -> LoginDateTime datetime, -> PRIMARY KEY(Id) -> );কোয়েরি ঠিক আছে, 0 সারি প্রভাবিত (0.84 সেকেন্ড)

সন্নিবেশ কমান্ড ব্যবহার করে টেবিলে কিছু রেকর্ড সন্নিবেশ করান। প্রশ্নটি নিম্নরূপ:

mysql> DateColumnWithNullDemo(LoginDateTime) মানগুলিতে সন্নিবেশ করুন(date_add(now(),interval -1 year));কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.15 সেকেন্ড)mysql> তারিখে সন্নিবেশ করুন ঠিক আছে, 1 সারি প্রভাবিত (0.17 সেকেন্ড)mysql> DateColumnWithNullDemo(LoginDateTime) মানগুলিতে (NULL); কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.12 সেকেন্ড)mysql> তারিখে ঢোকাও 1 সারি প্রভাবিত (0.18 সেকেন্ড)mysql> DateColumnWithNullDemo(LoginDateTime) মান (curdate()) এ ঢোকান; কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.23 সেকেন্ড)mysql> তারিখে ঢোকান 30:35'); কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.14 সেকেন্ড) mysql> DateColumnWithNullDemo(LoginDateTime) মানগুলিতে ঢোকান 2016-12-25 16:55:55'); কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.15 সেকেন্ড) mysql> তারিখে ঢোকান উইথনুলডেমো(লগইন ডেটটাইম) মান(নাল);কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.22 সেকেন্ড)mysql> DateColumnWithNullDemo(LoginDateTime) মানগুলিতে সন্নিবেশ করান 2020-01-01 06:45:23'); কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.23 সেকেন্ড)

সিলেক্ট স্টেটমেন্ট ব্যবহার করে টেবিল থেকে সমস্ত রেকর্ড প্রদর্শন করুন। প্রশ্নটি নিম্নরূপ:

DateColumnWithNullDemo থেকে
mysql> নির্বাচন করুন;

নিম্নলিখিত আউটপুট:

<প্রে>+------+---------+| আইডি | লগইন ডেটটাইম | 1 | 2018-01-29 17:07:20 || 2 | NULL || 3 | NULL || 4 | 2019-01-29 17:07:54 || 5 | 2019-01-29 00:00:00 || 6 | 2017-08-25 15:30:35 || 7 | NULL || 8 | 2016-12-25 16:55:55 || 9 | NULL || 10 | 2014-11-12 10:20:23 || 11 | 2020-01-01 06:45:23 |+----+----------------------+11টি সারি সেটে (0.00 সেকেন্ড)

শেষ পর্যন্ত NULL মান সেট করার জন্য এবং তারিখটিকে নিচের ক্রমে সাজানোর জন্য এখানে ক্যোয়ারী রয়েছে:

mysql> নির্বাচন করুন *DateColumnWithNullDemo থেকে -> অর্ডার করুন (LoginDateTime IS NULL), LoginDateTime DESC;

নিম্নলিখিত আউটপুট:

<প্রে>+------+---------+| আইডি | লগইন ডেটটাইম | 11 | 2020-01-01 06:45:23 || 4 | 2019-01-29 17:07:54 || 5 | 2019-01-29 00:00:00 || 1 | 2018-01-29 17:07:20 || 6 | 2017-08-25 15:30:35 || 8 | 2016-12-25 16:55:55 || 10 | 2014-11-12 10:20:23 || 2 | NULL || 3 | NULL || 7 | NULL || 9 | NULL |+------+--------- +11 সারি সেটে (0.00 সেকেন্ড)
  1. মাইএসকিউএল-এ একটি কলামের নাম কীভাবে খুঁজে পাবেন?

  2. কিভাবে MySQL এ তারিখ বিন্যাস আপডেট করবেন?

  3. MySQL ক্যোয়ারী নিচের ক্রমে টাইমস্ট্যাম্প অর্ডার করতে কিন্তু টাইমস্ট্যাম্প 0000-00-00 00:00:00 প্রথমে রাখুন?

  4. কিভাবে MySQL এ খালি স্ট্রিং NULL এ আপডেট করবেন?