ฟังก์ชัน MONTH() ใช้เพื่อดึงเลขเดือน (1–12) จากข้อมูลวันที่หรือวันเวลา เหมาะสำหรับการกรอง, วิเคราะห์ หรือจัดกลุ่มข้อมูลตามเดือน เช่น รายงานยอดขายรายเดือน หรือรายการในเดือนที่เลือก
ประโยชน์ของฟังก์ชัน MONTH()
- ใช้กรองข้อมูลที่เกิดในเดือนใดเดือนหนึ่ง
- ใช้จัดกลุ่มข้อมูล (
GROUP BY) เพื่อสรุปผลตามเดือน - ใช้วิเคราะห์พฤติกรรม, ยอดขาย, หรือลูกค้าในแต่ละเดือน
- ใช้ร่วมกับ
YEAR()เพื่อสร้างรายงานรายเดือนแบบละเอียด
รูปแบบการใช้งาน
MONTH(date_value)
date_valueคือข้อมูลประเภทDATE,DATETIME,TIMESTAMPหรือ string ที่แปลงเป็นวันเวลาได้ เช่น'2025-04-10',NOW(),order_date
ตัวอย่างการใช้งาน
ดึงเลขเดือนจากวันที่
SQL
SELECT MONTH('2025-04-10') AS month_number;
-- ผลลัพธ์: 4ดึงเดือนจากวันเวลาปัจจุบัน
SQL
SELECT MONTH(NOW()) AS current_month;
-- เช่น ผลลัพธ์: 4 (ถ้าเป็นเดือนเมษายน)ตัวอย่างการประยุกต์ใช้งาน
แสดงรายการที่เกิดขึ้นในเดือนเมษายน
SQL
SELECT *
FROM orders
WHERE MONTH(order_date) = 4;สรุปยอดขายรายเดือน
SQL
SELECT MONTH(order_date) AS order_month, COUNT(*) AS total_orders
FROM orders
GROUP BY order_month
ORDER BY order_month;สรุปยอดขายรายเดือน + ปี
SQL
SELECT YEAR(order_date) AS order_year,
MONTH(order_date) AS order_month,
SUM(total_amount) AS monthly_sales
FROM orders
GROUP BY order_year, order_month
ORDER BY order_year, order_month;หมายเหตุ
MONTH()คืนค่าเป็นเลข 1 ถึง 12 เท่านั้น ไม่ใช่ชื่อเดือน ถ้าต้องการชื่อเดือน ให้ใช้MONTHNAME()- ถ้าใส่ค่าวันที่ไม่ถูกต้อง หรือเป็น
NULLจะคืนค่าNULL