MySQL-এ বর্তমান সপ্তাহের রেকর্ডগুলো খুঁজে বের করতে YEARWEEK() ফাংশন ব্যবহার করা সবচেয়ে সহজ ও কার্যকর উপায়। এই ফাংশন তারিখ থেকে বছর এবং সপ্তাহ নম্বর একসাথে রিটার্ন করে, ফলে বর্তমান সপ্তাহের সাথে মিলানো সহজ হয়।
ব্যাসিক সিনট্যাক্স
SELECT * FROM your_table_name
WHERE YEARWEEK(your_date_column) = YEARWEEK(NOW());
উদাহরণের সাথে বুঝি
প্রথমে একটি ডেমো টেবিল তৈরি করি:
CREATE TABLE current_week_demo (
user_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
user_name VARCHAR(20),
user_post_date DATE
);
এখন কিছু নমুনা ডেটা ইনসার্ট করি:
INSERT INTO current_week_demo (user_name, user_post_date) VALUES
('Carol', '2010-01-06'),
('Bob', '2019-06-04'),
('David', '2019-03-06'),
('Maxwell', '2018-04-21');
টেবিলের সকল ডেটা দেখতে:
SELECT * FROM current_week_demo;
আউটপুট
+---------+-----------+----------------+
| user_id | user_name | user_post_date |
+---------+-----------+----------------+
| 1 | Carol | 2010-01-06 |
| 2 | Bob | 2019-06-04 |
| 3 | David | 2019-03-06 |
| 4 | Maxwell | 2018-04-21 |
+---------+-----------+----------------+
বর্তমান সপ্তাহের ক্যোয়ারি চালান
SELECT * FROM current_week_demo
WHERE YEARWEEK(user_post_date) = YEARWEEK(NOW());
ফলাফল (ধরে নিচ্ছি বর্তমান তারিখ ২০১৯-০৩-০৬-এর আশেপাশে)
+---------+-----------+----------------+
| user_id | user_name | user_post_date |
+---------+-----------+----------------+
| 3 | David | 2019-03-06 |
+---------+-----------+----------------+
নোট: YEARWEEK() ফাংশনটি সপ্তাহের শুরু রবিবার বা সোমবার ধরে নিতে পারে। আপনার সার্ভার কনফিগারেশনের উপর নির্ভর করে আচরণ বদলাতে পারে। আরও নিয়ন্ত্রণের জন্য YEARWEEK(date, mode) এর মোড প্যারামিটার ব্যবহার করুন।