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

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

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

  1. ใช้แยกเลขวันที่จาก DATE หรือ DATETIME เพื่อวิเคราะห์
  2. ใช้กรองข้อมูลที่เกิดในวันเดียวกันของทุกเดือน เช่น วันที่ 1 ของทุกเดือน
  3. ใช้จัดกลุ่มข้อมูลรายวัน
  4. ใช้ร่วมกับ MONTH() และ YEAR() เพื่อสร้างรายงานรายเดือน

รูปแบบการใช้งาน

DAYOFMONTH(date)
  • date คือค่าวันที่ เช่น '2025-04-10', NOW(), หรือชื่อคอลัมน์ที่เก็บ DATE/DATETIME

ตัวอย่างการใช้งาน

ดึงเลขวันที่จากค่าคงที่

SQL
SELECT DAYOFMONTH('2025-04-10') AS day_num;
-- ผลลัพธ์: 10

ดึงเลขวันจากวันเวลาปัจจุบัน

SQL
SELECT DAYOFMONTH(NOW()) AS today_day;
-- สมมุติวันนี้คือ 2025-04-10 → ผลลัพธ์: 10

ตัวอย่างการประยุกต์ใช้งาน

แสดงรายการที่เกิดในวันที่ 15 ของทุกเดือน

SQL
SELECT *
FROM invoices
WHERE DAYOFMONTH(invoice_date) = 15;

จัดกลุ่มยอดขายตามวันที่ในเดือน

SQL
SELECT DAYOFMONTH(order_date) AS day_in_month, COUNT(*) AS total_orders
FROM orders
GROUP BY DAYOFMONTH(order_date)
ORDER BY day_in_month;
แชร์เรื่องนี้