MySQL การใช้งานฟังก์ชัน DAY()

ฟังก์ชัน DAY() ใช้เพื่อดึงเลขวัน (วันที่ในเดือน) จากข้อมูลประเภท DATE, DATETIME, หรือ TIMESTAMP เหมาะสำหรับการดึงเลขวันออกมาจากข้อมูลประเภทวันที่ เช่น ใช้กรองข้อมูลเฉพาะวันที่ 1–31, สร้างรายงานรายวัน, หรือจัดกลุ่มข้อมูลตามวัน

ประโยชน์ของฟังก์ชัน DAY()

  1. ใช้แยกเลขวันที่จากฟิลด์ DATE หรือ DATETIME
  2. ใช้สร้างรายงานตามวันที่ในแต่ละเดือน
  3. ใช้กรองข้อมูลตามเลขวัน เช่น รายการที่เกิดในวันที่ 15
  4. ใช้ร่วมกับ 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;
แชร์เรื่องนี้