ทำงานกับฟังก์ชัน DAX

เสร็จสมบูรณ์เมื่อ

ไลบรารีฟังก์ชัน DAX ประกอบด้วยหลายฟังก์ชันร้อยรายการ โดยแต่ละรายการออกแบบมาเพื่อให้บรรลุเป้าหมายที่เจาะจง

เนื่องจาก DAX มาพร้อมกับ Add-in ของ Power Pivot สำหรับ Microsoft Excel 2010 มีฟังก์ชันมากกว่า 80 ฟังก์ชันที่สามารถใช้งานได้ใน Excel ซึ่งเป็นกลยุทธ์การออกแบบโดยเจตนาโดย Microsoft เพื่อให้แน่ใจว่าผู้ใช้ Excel สามารถทำงานได้อย่างรวดเร็วด้วย DAX

อย่างไรก็ตาม มีหลายฟังก์ชันที่คุณไม่สามารถค้นหาได้ใน Excel เนื่องจากฟังก์ชันดังกล่าวนั้นเจาะจงสำหรับการสร้างแบบจำลองข้อมูล:

  • ฟังก์ชันการนำทางความสัมพันธ์
  • กรองฟังก์ชันการแก้ไขบริบท
  • ฟังก์ชันตัวทำซ้ำ
  • ฟังก์ชันตัวแสดงเวลา
  • ฟังก์ชัน Path

เคล็ดลับ

หากต้องการค้นหาเอกสารที่เกี่ยวข้องกับฟังก์ชัน DAX ในการค้นหาเว็บ ให้ใส่คำสำคัญ DAX ตามด้วยชื่อฟังก์ชัน

โปรดดูการอ้างอิงฟังก์ชัน DAX สำหรับข้อมูลเพิ่มเติม

ฟังก์ชันที่มีต้นทางจาก Excel

ส่วนต่อไปนี้จะพิจารณาฟังก์ชันที่มีประโยชน์หลายรายการที่คุณอาจคุ้นเคยอยู่แล้ว เนื่องจากมีอยู่ใน Excel

ฟังก์ชัน IF DAX จะทดสอบว่าเป็นไปตามเงื่อนไขที่ระบุไว้เป็นอาร์กิวเมนต์แรกหรือไม่ ซึ่งจะส่งคืนค่าหนึ่งหากเงื่อนไขเป็น TRUE และส่งคืนค่าอื่นๆ หากเงื่อนไขเป็น FALSE ไวยากรณ์ของฟังก์ชันคือ:

IF(<logical_test>, <value_if_true>[, <value_if_false>])

เคล็ดลับ

อาร์กิวเมนต์ฟังก์ชันเป็นตัวเลือกเมื่อเอกสารแสดงอยู่ในวงเล็บสี่เหลี่ยม

หาก logical_test ประเมินเป็น FALSE และไม่ได้ระบุ value_if_false ฟังก์ชันจะส่งคืน BLANK

ฟังก์ชันการสรุป Excel จํานวนมากจะพร้อมใช้งาน รวมถึง SUM, COUNT, MINAVERAGE, MAX, และอื่น ๆ อีกมากมาย ความแตกต่างเดียวก็คืออยู่ใน DAX คุณส่งผ่านในการอ้างอิงคอลัมน์ ในขณะที่ใน Excel คุณส่งผ่านช่วงของเซลล์

ฟังก์ชันคณิตศาสตร์ ข้อความ วันที่และเวลา ข้อมูล และตรรกะจะพร้อมให้ใช้งานเช่นกัน ตัวอย่างเช่น ตัวอย่างฟังก์ชัน Excel ขนาดเล็กที่พร้อมใช้งานใน DAX ได้แก่ ABS, ROUND, SQRT, RIGHTLEFTLENDATEYEARUPPER, MONTH, NOW, , ISNUMBER, , TRUE, FALSE, , และIFERRORANDORNOT

ฟังก์ชันที่ไม่ได้มีต้นทางจาก Excel

ฟังก์ชัน DAX ที่มีประโยชน์สองฟังก์ชันที่ไม่ได้เจาะจงสําหรับการสร้างแบบจําลอง และไม่ได้มีต้นทางจาก Excel คือ DISTINCTCOUNT และDIVIDE

ฟังก์ชัน DISTINCTCOUNT

คุณสามารถใช้ฟังก์ชัน DISTINCTCOUNT DAX เพื่อนับจํานวนค่าที่แตกต่างกันในคอลัมน์ได้ ฟังก์ชันนี้มีประสิทธิภาพอย่างยิ่งในโซลูชันการวิเคราะห์ พิจารณาว่าจำนวนนับลูกค้าจะแตกต่างจากจำนวนนับลูกค้าที่ไม่ซ้ำ อย่างหลังนี้จะไม่นับจำนวนลูกค้าซ้ำ ดังนั้นความแตกต่างคือ "ลูกค้ากี่คน" เมื่อเปรียบเทียบกับ "ลูกค้าที่แตกต่างกี่คน"

ฟังก์ชัน DIVIDE

คุณสามารถใช้ฟังก์ชัน DAX เพื่อให้บรรลุการ DIVIDE หารได้ คุณต้องส่งผ่านนิพจน์ตัวเศษและตัวหาร อีกวิธีหนึ่งคือ คุณสามารถส่งผ่านค่าที่แสดงผลลัพธ์สำรอง DIVIDEไวยากรณ์ของฟังก์ชันคือ:

DIVIDE(<numerator>, <denominator>[, <alternate_result>])

ฟังก์ชันจะ DIVIDE จัดการกรณีการหารด้วยศูนย์โดยอัตโนมัติ หากผลลัพธ์สำรองไม่ได้ถูกส่งผ่าน และตัวหารเป็นศูนย์หรือ BLANK ฟังก์ชันจะส่งคืนค่า BLANK เมื่อผลลัพธ์สำรองถูกส่งผ่าน จะถูกส่งคืนแทน BLANK

ฟังก์ชันนี้มีความสะดวก เนื่องจากจะช่วยประหยัดนิพจน์ของคุณโดยไม่ให้ต้องทดสอบค่าตัวหารก่อน ฟังก์ชันนี้ยังได้รับการปรับให้เหมาะสมสําหรับการทดสอบค่าตัวหารมากกว่า IF ฟังก์ชัน การเพิ่มประสิทธิภาพมีความสำคัญ เนื่องจากการตรวจสอบการหารด้วยศูนย์มีราคาแพง ยิ่งไปกว่านั้น DIVIDE การใช้ฟังก์ชันยังส่งผลให้นิพจน์นั้นกระชับและสละสลวยมากขึ้น

เคล็ดลับ

เราขอแนะนําให้คุณใช้ DIVIDE ฟังก์ชัน เมื่อใดก็ตามที่ตัวหารเป็นนิพจน์ที่สามารถส่งกลับค่าศูนย์หรือ BLANK ได้ ในกรณีที่ตัวหารเป็นค่าคงที่ เราขอแนะนำให้คุณใช้ตัวดำเนินการหาร (/) ซึ่งจะแนะนำในภายหลังในมอดูลนี้ ในกรณีนี้ การหารจะมีการรับประกันความสำเร็จ และนิพจน์ของคุณจะทำงานได้ดียิ่งขึ้นเนื่องจากจะหลีกเลี่ยงการทดสอบที่ไม่จำเป็น