PHP Ionic Angularjs Phonegap AJAX Javascript CSS MySQL jQuery Forum


เทคนิค วิธี การแสดงข้อมูล ด้วยเงื่อนไข วันที่ date ใน mysql

17 January 2011 By
mysql วันที่ date แสดงข้อมูล


กำหนดให้แสดงรายการข้อมูลของวันที่ปัจจุบัน


ถ้าเก็บข้อมูลเป็นแบบ DATE ตัวอย่าง date_field เท่ากับ 2011-01-17
จะใช้ เป็น
 

SELECT * FROM table WHERE date_field=curdate()


ถ้าเก็บข้อมูลเป็น DATETIME ตัวอย่าง date_field เท่ากับ 2011-01-17 13:30:00
จะใช้ เป็น
 

SELECT * FROM table WHERE date(date_field)=curdate()


ถ้าเก็บข้อมูลวันที่เป็น TIMESTAMP ตัวอย่าง date_field เท่ากับ 1295252454
จะใช้ เป็น
 

SELECT * FROM table WHERE date(from_unixtime(date_field))=curdate()


กำหนดให้แสดงรายการที่ต้องการให้อยู่นาน 5 วัน นับจากวันที่เพิ่มข้อมูล หรือวันที่ของข้อมูลนั้น


 

SELECT * FROM table WHERE curdate()<date_add(date_field,interval 5 day) 

* ตัวอย่าง
ข้อมูลวันที่ 2011-01-01
ข้อมูลจะแสดงในวันที่
2011-01-01
2011-01-02
2011-01-03
2011-01-04 และ
2011-01-05
หลังจากนั้นจะไม่แสดง


กำหนดให้แสดงรายการข้อมูลย้อนหลัง 5 วันล่าสุด ย้อนหลังจากวันที่ปัจจุบัน รวมวันที่ปัจจุบัน

SELECT * FROM table WHERE date_field>=date_add(curdate(),interval -5 day) 

 

* ตัวอย่าง ปัจจุบันวันที่ 2011-01-05
ข้อมูลของวันที่ ที่มากกว่า 2010-12-31 จะแสดง นั้นคือ
ข้อมูลวันที่
2010-12-31
2011-01-01
2011-01-02
2011-01-03
2011-01-04
และ
2011-01-05  จะแสดง ข้อมูลวันที่ก่อน 2010-12-31 จะไม่แสดง


หมายเหตู:: 
date_field คือชื่อฟิลด์ในฐานข้อมูลที่เก็บข้อมูลวันที่ ให้เปลี่ยนไปตามชื่อที่กำหนด

curdate() เป็นฟังก์ชัน date ใน mysql แสดงวันที่ปัจจุบัน ในรูปแบบ เช่น 2011-01-01

date() เป็นฟังก์ชัน date ใน mysql สำหรับดึงเฉพาะวันที่ในฟิลด์ข้อมูลวันที่ เช่น
ถ้า date_field='2011-01-01 12:00:00' จะได้ date(date_field)='2011-01-01'

from_unixtime() เป็นฟังก์ชัน date ใน mysql สำหรับเปลี่ยน timestamp ให้อยู่ในรูป datetime
หรือรูปแบบ 2011-01-01 12:00:00 เป็นต้น

date_add() เป็นฟังก์ชัน date ใน mysql สำหรับบวกวันที่ ใช้ร่วมกับ
interval 1 day  = บวก 1 วัน
interval -1 day = ลบ 1 วัน
หรือจะใช้ date_sub() เป็นฟังก์ชัน date ใน mysql สำหรับลบวันที่

date_add(curdate(),interval -5 day) มีค่าเท่ากับ date_sub(curdate(),interval 5 day)


 









เนื้อหาที่เกี่ยวข้อง



Tags:: date mysql แสดงข้อมูล วันที่






อย่าลืมกด Like กด Share เป็นกำลังใจ ในการสร้างบทความใหม่ๆ น่ะครับ


URL สำหรับอ้างอิง