การกำหนดประเภทของ field ในตารางฐานข้อมูลเป็น date หรือ datetime ทำให้เราสามารถ
จัดการข้อมูลเกี่ยวกับวันที่ได้ดังต่อไปนี้
รูปแบบข้อมูล
date = 0000-00-00 ,
ปี 4 หลัก เช่น 2010 ,2011 เป็นต้น
เดือน 2 หลัก , เช่น 01 ถึง 12
วันที่ 2 หลัก เช่น 01 ถึง 31
datetime = 0000-00-00 00:00:00
ปี 4 หลัก เช่น 2010 ,2011 เป็นต้น
ดือน 2 หลัก , เช่น 01 ถึง 12
วันที่ 2 หลัก เช่น 01 ถึง 31
ชั่วโมง 2 หลัก เช่น 00 ถึง 23
นาที 2 หลัก เช่น 00 ถึง 59
วินาที 2 หลัก เช่น 00 ถึง 59
ตัวอย่างเงื่อนไขการค้นหาข้อมูลเกี่ยวกับวันที่
ตาราง test_date
/// date_id /// /// date_time //
1 2009-04-13
2 2009-12-01
3 2010-03-01
4 2010-03-01
5 2010-04-12
6 2010-04-13
1.ต้องการข้อมูลรายการในปี 2009
1 | SELECT * FROM test_date WHERE date_time like '2009%' |
2.ต้องการหาข้อมูลของเดือน เมษายน (04) ของทุกปี
1 | SELECT * FROM test_date WHERE substr(date_time,6,2)= '04' |
3.ต้องการหาข้อมูลของเดือน มีนาคม (03) ปี 2010
1 | SELECT * FROM test_date WHERE date_time like '2010-03%' |
4.ต้องการหาข้อมูลช่วงตั้งแต่วันที่ 2009-12-01 ถึง 2010-03-31
1 | SELECT * FROM test_date WHERE (date_time between '2009-12-01' and '2010-03-31' ) |
5.ต้องการหาข้อมูลช่วงของเดือนธันวาคมปี 2009 ถึง กุมภาพันธ์ ปี 2010
1 | SELECT * FROM test_date WHERE (date_time between 'date_format(' 2009-12-01 ',' %Y-%m-01 ')' and 'date_sub(date_add(date_format(' 2010-02-12 ',' %Y-%m-01 '),interval 1 month),interval 1 day)' ) |