DATEADD คืนค่าตารางวันที่ ที่ถูกเลื่อนออกไปจากช่วงวันที่ใน Context ปัจจุบัน ตามจำนวน (NumberOfIntervals) และหน่วย (Interval) ที่กำหนด เช่น เลื่อนย้อนหลัง 1 เดือน หรือเลื่อนไปข้างหน้า 1 ปี
=DATEADD(Dates, NumberOfIntervals, Interval)
=DATEADD(Dates, NumberOfIntervals, Interval)
| Argument | Type | Required | Default | Description |
|---|---|---|---|---|
| Dates | column | Yes | คอลัมน์วันที่จาก Date Table | |
| NumberOfIntervals | integer | Yes | จำนวนหน่วยที่ต้องการเลื่อน (ติดลบ = ย้อนหลัง, บวก = ไปข้างหน้า) | |
| Interval | enum | Yes | หน่วยเวลา: DAY, MONTH, QUARTER, YEAR |
เปรียบเทียบยอดขายเดือนนี้กับเดือนที่แล้ว (MoM Growth) โดยใช้ DATEADD(…, -1, MONTH)
เปรียบเทียบ Q2 ปีนี้ กับ Q1 ปีเดียวกัน
Sales PM = CALCULATE( [Total Sales], DATEADD('Date'[Date], -1, MONTH) )Sales PM = CALCULATE( [Total Sales], DATEADD('Date'[Date], -1, MONTH) )
ยอดขายของ 1 เดือนก่อนหน้า
Sales LY = CALCULATE( [Total Sales], DATEADD('Date'[Date], -1, YEAR) )Sales LY = CALCULATE( [Total Sales], DATEADD('Date'[Date], -1, YEAR) )
ยอดขายของ 1 ปีก่อนหน้า
Forecast Next Month = CALCULATE( [Total Sales], DATEADD('Date'[Date], 1, MONTH) )Forecast Next Month = CALCULATE( [Total Sales], DATEADD('Date'[Date], 1, MONTH) )
ยอดขายของ 1 เดือนถัดไป
DATEADD เลื่อนวันที่แบบ “เป๊ะๆ” ตามช่วงวันที่ที่มีใน Context (เช่น เลือก 1-15 ม.ค. ก็จะย้อนไป 1-15 ธ.ค.) แต่ PARALLELPERIOD จะขยายช่วงเวลาให้เต็มหน่วยเสมอ (เช่น เลือก 1-15 ม.ค. จะย้อนไป ‘ทั้งเดือน’ ธ.ค.)
DATEADD เป็นฟังก์ชัน Time Intelligence ที่ยืดหยุ่นที่สุดในการ “เลื่อนเวลา” (Shift) มันช่วยให้คุณขยับช่วงเวลาปัจจุบันไปข้างหน้าหรือย้อนหลังได้ตามจำนวนและหน่วยที่ต้องการ (วัน, เดือน, ไตรมาส, ปี)
นิยมใช้เปรียบเทียบข้อมูลกับเดือนก่อน (MoM), ไตรมาสก่อน (QoQ) หรือปีก่อน (YoY)