DATESBETWEEN คืนตารางวันที่ที่อยู่ระหว่าง StartDate และ EndDate (รวมวันเริ่ม/วันจบ) เหมาะกับการใช้เป็นตัวกรองเวลาใน CALCULATE เพื่อคำนวณตามช่วงวันที่ที่กำหนดเอง
=DATESBETWEEN(<Dates>, <StartDate>, <EndDate>)
=DATESBETWEEN(<Dates>, <StartDate>, <EndDate>)
| Argument | Type | Required | Default | Description |
|---|---|---|---|---|
| Dates | column | Yes | คอลัมน์วันที่จากตารางวันที่/ปฏิทิน | |
| StartDate | date/datetime | Yes | วันเริ่มต้นของช่วง | |
| EndDate | date/datetime | Yes | วันสิ้นสุดของช่วง |
เช่น ช่วงโปรโมชั่นหรือแคมเปญ
เช่น สะสมยอดตั้งแต่วันเริ่มต้นที่กำหนดจนถึงวันนี้
Sales (Campaign) = CALCULATE( [Sales Amount], DATESBETWEEN( 'DimDate'[Date], DATE(2025, 11, 1), DATE(2025, 11, 30) ) )=Sales (Campaign) =
CALCULATE(
[Sales Amount],
DATESBETWEEN(
'DimDate'[Date],
DATE(2025, 11, 1),
DATE(2025, 11, 30)
)
)
ยอดขายในช่วง 1–30 พ.ย. 2025
Sales (Since Launch) = CALCULATE( [Sales Amount], DATESBETWEEN( 'DimDate'[Date], DATE(2025, 1, 15), TODAY() ) )=Sales (Since Launch) =
CALCULATE(
[Sales Amount],
DATESBETWEEN(
'DimDate'[Date],
DATE(2025, 1, 15),
TODAY()
)
)
ยอดขายสะสมตั้งแต่ 15 ม.ค. 2025 ถึงวันนี้
Custom Dates = DATESBETWEEN( 'DimDate'[Date], DATE(2025, 6, 1), DATE(2025, 6, 15) )Custom Dates =
DATESBETWEEN(
'DimDate'[Date],
DATE(2025, 6, 1),
DATE(2025, 6, 15)
)
ได้ตารางวันที่ของช่วง 1–15 มิ.ย. 2025
คืนค่าเป็นตารางของวันที่ จึงมักใช้เป็นตัวกรองภายใน CALCULATE เพื่อให้มาตรวัดคืนค่าสเกลาร์
ควรใช้คอลัมน์วันที่จากตารางวันที่ที่ต่อเนื่องและกำหนดเป็นตารางวันที่ของโมเดล เพื่อให้การคำนวณช่วงเวลาถูกต้อง
DATESBETWEEN ใช้สร้าง “ตารางของวันที่” ในช่วงที่กำหนด โดยระบุวันเริ่มต้น (StartDate) และวันสิ้นสุด (EndDate) แล้วคืนวันที่ทั้งหมดที่อยู่ในช่วงนั้น (รวมวันเริ่มและวันจบ) เหมาะกับการทำคำนวณตามช่วงเวลาแบบกำหนดเอง เช่น ช่วงแคมเปญ หรือช่วงสะสมตั้งแต่วันเริ่มโครงการ