FIRSTDATE คืนค่าตารางที่มีวันที่แรกในบริบทตัวกรองปัจจุบัน มักใช้เป็นตารางตัวกรองให้ CALCULATE เพื่อคำนวณ measure ณ วันแรกของช่วงที่เลือก และสามารถใช้ MINX เพื่อแปลงผลเป็น scalar date ได้
=FIRSTDATE(<Dates>)
=FIRSTDATE(<Dates>)
| Argument | Type | Required | Default | Description |
|---|---|---|---|---|
| Dates | dates | Yes | คอลัมน์วันที่ หรือ table expression ที่ให้คอลัมน์วันที่ |
คำนวณ [Total Sales] เฉพาะวันแรกของช่วงที่ถูกกรอง
แปลงผลลัพธ์จากตารางให้เป็น scalar date เพื่อใช้แสดงผล
ใช้คู่กับ LASTDATE เพื่อคำนวณความต่างของช่วงเวลา
ยอดขายวันแรกของช่วง = CALCULATE( [Total Sales], FIRSTDATE('Date'[Date]) )ยอดขายวันแรกของช่วง =
CALCULATE(
[Total Sales],
FIRSTDATE('Date'[Date])
)
ได้ [Total Sales] เฉพาะวันที่แรกของช่วงที่ถูกกรอง
วันที่แรกของช่วง (ค่า) = MINX( FIRSTDATE('Date'[Date]), 'Date'[Date] )=วันที่แรกของช่วง (ค่า) =
MINX(
FIRSTDATE('Date'[Date]),
'Date'[Date]
)
ได้วันที่แรกของช่วงเป็นค่าเดี่ยว (date/datetime)
จำนวนวันในช่วง = DATEDIFF( MINX(FIRSTDATE('Date'[Date]), 'Date'[Date]), MAX('Date'[Date]), DAY ) + 1จำนวนวันในช่วง =
DATEDIFF(
MINX(FIRSTDATE('Date'[Date]), 'Date'[Date]),
MAX('Date'[Date]),
DAY
) + 1
ได้จำนวนวันในช่วง (โดยประมาณตามตัวอย่างนี้)
FIRSTDATE คืนค่าเป็นตารางวันที่ (table) ดังนั้นถ้าต้องการค่าเดี่ยวให้ใช้ iterator เช่น MINX หรือ MAX (ตามสิ่งที่ต้องการ)
ในหลายกรณี MIN จะให้ผลเป็น scalar และใช้ง่ายกว่า แต่ FIRSTDATE มีประโยชน์เมื่อคุณต้องการ “ตารางตัวกรอง” เพื่อใช้กับ CALCULATE หรือทำงานตามรูปแบบของ time intelligence
FIRSTDATE คืนค่าตารางวันที่ที่มี “วันที่แรก” ในบริบทตัวกรองปัจจุบัน โดยทั่วไปใช้เป็น ตารางตัวกรอง ใน CALCULATE เพื่อคำนวณค่าของวันแรกในช่วงที่เลือก เช่นยอดขายของวันแรกในเดือน/ไตรมาส/ช่วงวันที่ที่ผู้ใช้เลือก
หมายเหตุ: FIRSTDATE คืนค่าเป็น ตาราง ไม่ใช่ scalar date ดังนั้นถ้าต้องการดึงออกมาเป็นค่าเดี่ยว (วันที่) ให้ใช้ iterator เช่น MINX เพื่อแปลงเป็น scalar