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

MySQL-এ ডেটা অনুযায়ী রেকর্ড সার্চ (DATE ফাংশন)

MySQL-এ DATETIME কলাম থেকে শুধু ডেট অংশ নিয়ে ফিল্টার করতে DATE() ফাংশন ব্যবহার করুন।

উদাহরণ

mysql> CREATE TABLE DemoTable732 (
    Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    PassengerId INT,
    PassengerName VARCHAR(100),
    PassengerAge INT,
    PassengerTravelDatetime DATETIME
);
Query OK, 0 rows affected (0.67 sec)

mysql> INSERT INTO DemoTable732 (PassengerId, PassengerName, PassengerAge, PassengerTravelDatetime) VALUES
(110, 'Chris', 25, '2019-07-23 12:45:56'),
(120, 'Robert', 24, '2019-07-21 11:05:00'),
(120, 'Sam', 26, '2019-07-21 11:05:00');
Query OK, 3 rows affected

সব রেকর্ড

mysql> SELECT * FROM DemoTable732;
+----+-------------+---------------+--------------+-------------------------+
| Id | PassengerId | PassengerName | PassengerAge | PassengerTravelDatetime |
+----+-------------+---------------+--------------+-------------------------+
| 1  | 110         | Chris         | 25           | 2019-07-23 12:45:56     |
| 2  | 120         | Robert        | 24           | 2019-07-21 11:05:00     |
| 3  | 120         | Sam           | 26           | 2019-07-21 11:05:00     |
+----+-------------+---------------+--------------+-------------------------+

PassengerId=120 এবং তারিখ 2019-07-21

mysql> SELECT COUNT(Id) FROM DemoTable732
WHERE PassengerId = 120 AND DATE(PassengerTravelDatetime) = '2019-07-21';
+-----------+
| count(Id) |
+-----------+
| 2         |
+-----------+

টিপস

  • DATE(datetime_col) → শুধু ডেট অংশ বের করে (ইনডেক্স ব্যবহার নাও করতে পারে)
  • পারফরম্যান্সের জন্য: WHERE dt >= '2019-07-21' AND dt < '2019-07-22'
  • CAST(datetime_col AS DATE) ও কাজ করে
  1. MySQL-এ VARCHAR তারিখ কলামের সাথে বর্তমান তারিখ তুলনা করা

  2. MySQL-এ BETWEEN দিয়ে দ্রুত ডেটা রেঞ্জ সার্চ করা

  3. MySQL-এ STR_TO_DATE() ব্যবহার করে ডেট রেকর্ড ইনসার্ট/রূপান্তর করা

  4. MySQL-এ DATE_ADD ব্যবহার করে টেবিলের তারিখ আপডেট করা (বছর যোগ/বিয়োগ)