เมื่อต้องการเปรียบเทียบเฉพาะวันที่จากฟิลด์ DATETIME โดยไม่สนใจส่วนเวลา ให้ใช้ฟังก์ชัน DATE() รูปแบบคำสั่ง:
select * from yourTableName where date(yourColumnName) = 'yourDate';
ตัวอย่างการใช้งาน
สร้างตารางเก็บข้อมูลล็อกอิน:
mysql> create table ComparingDate (
-> Name varchar(100),
-> Login datetime
-> );
เพิ่มข้อมูลตัวอย่าง:
mysql> insert into ComparingDate values('John','2014-04-06 22:50:45');
mysql> insert into ComparingDate values('Bob','2018-12-15 15:07:46');
mysql> insert into ComparingDate values('Carol','2016-03-10 21:50:40');
mysql> insert into ComparingDate values('David','1995-08-08 23:40:47');
แสดงข้อมูลทั้งหมด:
mysql> select * from ComparingDate;
ผลลัพธ์:
+-------+---------------------+
| Name | Login |
+-------+---------------------+
| John | 2014-04-06 22:50:45 |
| Bob | 2018-12-15 15:07:46 |
| Carol | 2016-03-10 21:50:40 |
| David | 1995-08-08 23:40:47 |
+-------+---------------------+
คิวรีเปรียบเทียบเฉพาะวันที่
mysql> select * from ComparingDate where date(Login) = '2016-03-10';
ผลลัพธ์:
+-------+---------------------+
| Name | Login |
+-------+---------------------+
| Carol | 2016-03-10 21:50:40 |
+-------+---------------------+
คำอธิบาย: ฟังก์ชัน DATE() จะดึงเฉพาะส่วนวันที่ (YYYY-MM-DD) ออกมาจาก DATETIME ทำให้สามารถเปรียบเทียบกับวันที่ที่ต้องการได้โดยไม่ต้องสนใจเวลา