คุมการแสดงผลตามเวลา

คุมการแสดงผลตามเวลา

ตัวอย่าง query กำหนดเวลาแสดงผลของ mysql ให้แสดง ไม่แสดงตามเวลาที่กำหนด โดยยูเซอร์เลือกที่จะใส่ไม่ใส่ time, expire, start, end ก็ได้ เช่น จะแสดงหลังวันที่ xxx ไปตลอดกาลก็ใส่แต่วันที่เริ่มต้น จะแสดงจนถึงวันที่เท่าไหร่ก็ใส่เฉพาะวันที่สิ้นสุด จะแสดงในช่วงเวลาก็ใส่ทั้งคู่ กลับกัน ไม่ใส่ทั้งคู่ก็เหมือนไม่กำหนดเงือนไขอะไรเลย[sourcecode language=”sql”]
SELECT *,
CASE
WHEN datePublish != ‘0000-00-00’
AND dateExpire != ‘0000-00-00’ THEN
IF(datePublish <= Curdate()
AND dateExpire >= Curdate(), true, false)
WHEN datePublish != ‘0000-00-00’ THEN
IF(datePublish <= Curdate(), true, false
)
WHEN dateExpire != ‘0000-00-00’ THEN
IF(dateExpire >= Curdate(), true, false)
ELSE true
END AS published
FROM pp_contents
HAVING published = true[/sourcecode]

About the author

phunsanit administrator

Leave a Reply