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

MySQL-এ আজ থেকে এক সপ্তাহ আগের তারিখগুলো বের করা

DATEDIFF ফাংশন ব্যবহার করে দুটি তারিখের পার্থক্য দিনে বের করা যায়। ৭ দিনের গুণফল (মডুলো ৭ = ০) দিয়ে সপ্তাহিক তারিখ বের করা সম্ভব।

বর্তমান তারিখ ও টেবিল:

mysql> SELECT CURDATE();  -- 2019-12-20
mysql> CREATE TABLE DemoTable1990 (ShippingDate DATE);
mysql> INSERT INTO DemoTable1990 VALUES
    ('2019-12-13'), ('2019-12-21'), ('2019-12-20'), ('2019-12-24');

কোয়েরি (আজ থেকে ৭ দিনের গুণফল পার্থক্য):

mysql> SELECT * FROM DemoTable1990
    WHERE DATEDIFF(CURDATE(), ShippingDate) % 7 = 0;

আউটপুট:

+--------------+
| ShippingDate |
+--------------+
| 2019-12-13   |
| 2019-12-20   |
+--------------+

ব্যাখ্যা

  • DATEDIFF(CURDATE(), ShippingDate) — আজ ও শিপিং তারিখের পার্থক্য (দিনে)।
  • % 7 = 0 — পার্থক্য ৭ দিনের গুণফল হলে (যায় ৭, ১৪, ২১... দিন আগে)।

বিকল্প পদ্ধতি (স্পষ্টتر)

-- ঠিক ৭ দিন আগে
SELECT * FROM DemoTable1990 WHERE ShippingDate = DATE_SUB(CURDATE(), INTERVAL 7 DAY);

-- ৭ দিনের মধ্যে (আজ থেকে ৭ দিন আগে পর্যন্ত)
SELECT * FROM DemoTable1990 WHERE ShippingDate BETWEEN DATE_SUB(CURDATE(), INTERVAL 7 DAY) AND CURDATE();

প্রয়োজন অনুযায়ী পদ্ধতি বেছে নিন।

  1. MySQL-এ তারিখের পরিসীমা থেকে দিনগুলো কীভাবে জেনারেট করবেন?

  2. MySQL-এ একটি টেবিলের সারি যেটি অন্য টেবিলে নেই সেগুলো কীভাবে বের করবেন?

  3. MySQL-এ শেষ ১০টি সারি কীভাবে বের করবেন?

  4. MySQL-এ WHERE ক্লজে তারিখ বিয়োগ করে রো সিলেক্ট করা