ช่วงนี้หลายๆคนอาจจะเคยได้ยิน หรือ เห็นบ้างกับคำๆนี้ครับ “DAX” ว่าแต่ว่า ไอ้คำว่า DAX นี้มันคืออะไร มันใช้ทำอะไร แล้วมันใช้งานอย่างไร เพื่อให้ไม่เสียเวลา เรามาเริ่มต้นกันได้เลยครับ ไอ้คำว่า DAX เนี่ยย่อมาจาก Data Analysis Expressions เป็นภาษาสูตรที่ใช้ในการวิเคราะห์ข้อมูลในผลิตภัณฑ์ของ Microsoft เช่น Power BI, Excel (Power Pivot) และ SQL Server ครับ

DAX ประกอบไปด้วยฟังก์ชัน ตัวดำเนินการ และค่าคงที่ ที่สามารถใช้สร้างสูตรต่างๆ สำหรับ:

  • การคำนวณ: คำนวณค่าใหม่จากคอลัมน์ที่มีอยู่ ตัวอย่างเช่น คำนวณยอดขายรวม หาค่าเฉลี่ย หรือหาเปอร์เซ็นต์การเปลี่ยนแปลง
  • การกรอง: เลือกเฉพาะข้อมูลที่ตรงตามเงื่อนไข ตัวอย่างเช่น แสดงข้อมูลเฉพาะสำหรับปี 2023 หรือเฉพาะลูกค้าในประเทศไทย
  • การสรุป: สรุปข้อมูลในรูปแบบต่างๆ ตัวอย่างเช่น คำนวณยอดขายรวมต่อประเภทสินค้า หรือหาจำนวนลูกค้าใหม่ต่อเดือน
  • การสร้างคอลัมน์ใหม่: เพิ่มคอลัมน์ใหม่ให้กับตาราง ตัวอย่างเช่น คำนวณค่าส่วนลด หรือสร้างคอลัมน์สถานะ

ตัวอย่างการเขียน DAX

1. คำนวณยอดขายรวม

= SUM(Sales[Amount])

สูตรนี้ใช้ฟังก์ชัน SUM เพื่อคำนวณยอดขายรวมจากคอลัมน์ “Amount” ในตาราง “Sales”

2. หาค่าเฉลี่ยของคะแนนสอบ

= AVERAGE(Exams[Score])

สูตรนี้ใช้ฟังก์ชัน AVERAGE เพื่อหาค่าเฉลี่ยของคะแนนสอบจากคอลัมน์ “Score” ในตาราง “Exams”

3. กรองข้อมูลเฉพาะปี 2023

= FILTER(Sales, Sales[Year] = 2023)

สูตรนี้ใช้ฟังก์ชัน FILTER เพื่อเลือกเฉพาะข้อมูลในตาราง “Sales” ที่มีคอลัมน์ “Year” เท่ากับ 2023

4. สรุปยอดขายต่อประเภทสินค้า

= SUMMARIZE(Sales, Sales[ProductCategory], "Total Sales", SUM(Sales[Amount]))

สูตรนี้ใช้ฟังก์ชัน SUMMARIZE เพื่อสรุปยอดขายรวมต่อประเภทสินค้า

5. สร้างคอลัมน์สถานะ

= IF(Sales[Amount] > 1000, "High", "Low")

สูตรนี้ใช้ฟังก์ชัน IF เพื่อสร้างคอลัมน์สถานะ โดยให้ “High” สำหรับยอดขายมากกว่า 1000 บาท และ “Low” สำหรับยอดขายน้อยกว่าหรือเท่ากับ 1000 บาท

นี่คือตัวอย่างการเขียน DAX เพียงบางส่วน ยังมีฟังก์ชัน ตัวดำเนินการ และเทคนิคอื่นๆ อีกมากมายที่สามารถใช้ในการวิเคราะห์ข้อมูล

แหล่งข้อมูลสำหรับการเรียนรู้เพิ่มเติม:

หมายเหตุ:

  • DAX มีไวยากรณ์และ syntax ของตัวเอง
  • สูตร DAX ขึ้นอยู่กับโครงสร้างของโมเดลข้อมูล
  • การฝึกฝนและลองใช้บ่อยๆ จะช่วยให้เข้าใจและใช้งาน DAX ได้อย่างคล่องแคล่ว

Comments

comments