ฟังก์ชัน DAY() ใช้เพื่อดึงเลขวัน (วันที่ในเดือน) จากข้อมูลประเภท DATE, DATETIME, หรือ TIMESTAMP เหมาะสำหรับการดึงเลขวันออกมาจากข้อมูลประเภทวันที่ เช่น ใช้กรองข้อมูลเฉพาะวันที่ 1–31, สร้างรายงานรายวัน, หรือจัดกลุ่มข้อมูลตามวัน
ประโยชน์ของฟังก์ชัน DAY()
- ใช้แยกเลขวันที่จากฟิลด์
DATEหรือDATETIME - ใช้สร้างรายงานตามวันที่ในแต่ละเดือน
- ใช้กรองข้อมูลตามเลขวัน เช่น รายการที่เกิดในวันที่ 15
- ใช้ร่วมกับ
MONTH()และYEAR()เพื่อจัดกลุ่มข้อมูลรายวัน
รูปแบบการใช้งาน
DAY(date)
dateคือค่าวันที่หรือวันเวลา เช่น'2025-04-10',NOW(),order_date
ตัวอย่างการใช้งาน
ดึงเลขวันจากวันที่ปัจจุบัน
SQL
SELECT DAY(CURDATE()) AS today_day;
-- ถ้าวันนี้คือ 2025-04-10 → ผลลัพธ์: 10ดึงเลขวันจาก DATETIME
SQL
SELECT DAY('2025-04-15 14:30:00') AS day_number;
-- ผลลัพธ์: 15ตัวอย่างการประยุกต์ใช้งาน
แสดงคำสั่งซื้อที่เกิดในวันที่ 1 ของแต่ละเดือน
SQL
SELECT *
FROM orders
WHERE DAY(order_date) = 1;นับจำนวนคำสั่งซื้อในแต่ละวันของเดือน
SQL
SELECT DAY(order_date) AS order_day, COUNT(*) AS total_orders
FROM orders
GROUP BY DAY(order_date)
ORDER BY order_day;