Site icon วิศวกรรีพอร์ต

7 ภาษาที่ใช้ใน Power BI

มาลองเดาไหมครับว่า
ถ้าจะเชี่ยวชาญ Power BI ต้องใช้เป็นกี่ภาษา?

เฉลย

7 ภาษา

อ่านไม่ผิด 7 ภาษา!

มีภาษาอะไรบ้าง มาดูกัน 🙂

[ 1. DAX ]

ภาษาที่เรียกว่าน่าจะสำคัญที่สุดใน Power BI เพราะใช้สร้างทั้ง Column, Table และ Measure

คนที่เก่ง DAX จะทำอะไรก็ได้ใน Power BI
ในทางตรงข้าม คนที่ไม่เก่ง DAX จะติดขัดนู่นนี่นั่นไปหมด

DAX เป็นลูกผสมระหว่าง Excel และ SQL ถ้าใครคุ้นเคยสองอย่างนี้จะได้เปรียบและปรับตัวเร็วมาก 😊

[ 2. M Code ]

ภาษาที่ใช้ใน Power Query และ Dataflow
ใช้ในการดึงข้อมูล และแปลงข้อมูลให้อยู่ในรูปแบบที่ต้องการ

ข้อดีของ Power Query (และ Dataflow) คือ ใช้งานง่าย
ถ้าข้อมูลต้นทางเป็นระเบียบ ไม่กี่คลิกก็เสร็จ

แต่ในชีวิตจริง ข้อมูลอาจไม่เป็นระเบียบ ต้องลบนั่น เพิ่มนี่ ปรับโน่น
ถ้าการปรับแต่งนั้นไม่ได้อยู่ในรูปแบบที่ง่าย จำเป็นต้องเขียนโค้ด และโค้ดนั้นคือ M Code

M Code เป็นภาษาที่จุกจิก เพราะต้องสะกดชื่อคำสั่งให้ถูกต้องแบบเป๊ะ ๆ ทั้งตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ (Case Sensitive)

รูปแบบของภาษาเป็น Functional Language มีความคล้าย Excel พอสมควร แต่ละเอียดเรื่อง Data Type ถ้าใช้ฟังก์ชันกับข้อมูลผิดประเภทจะเจ๊งทันที 😭

ช่วงแรกที่ศึกษา M Code อาจงงเล็กน้อย แต่ถ้าจับหลักได้ก็ฉลุย 😊

[ 3. TMDL ]

ภาษาใหม่ที่เพิ่งเริ่มใช้ต้นปี 2025 ใช้ในการแก้ไขวัตถุ (Object) ครั้งละมาก ๆ

เช่น ต้องการแก้ไขฟอร์แมตของ Measure 20 ตัวในครั้งเดียว
ต้องการก๊อปปี้ Measure ทุกตัวจากไฟล์แรกไปไฟล์ที่สอง
ต้องการแก้คุณสมบัติ (Properties) บางอย่างของ 10 ตารางพร้อมกัน

ในทางปฏิบัติ คนที่ใช้ภาษานี้น่าจะเป็นโปรแกรมเมอร์ที่ต้องทำหลาย ๆ โปรเจกต์
ต้องการปรับโครงสร้างของทุกโปรเจกต์ให้เหมือนกัน
หรือต้องการเซ็ตมาตรฐานให้เหมือนกัน

ถ้าเป็นผู้ใช้งานทั่วไป มีโอกาสใช้ค่อนข้างน้อย

[ 4. Python ]

Python ใช้ใน Power BI ได้ 2 รูปแบบคือ
1. ดึงข้อมูล และแปลงข้อมูล (ใช้ใน Power Query)
2. สร้างกราฟ

แปลว่าเราสามารถใช้ไพธอนดึงข้อมูลได้
ใช้ Library Pandas เพื่อแปลงข้อมูลได้
ใช้กราฟล้ำ ๆ จาก Library Seaborn, Matplotlib หรือไลบรารีอื่น ๆ ได้

ในทางตรงข้าม ใช้ Python สร้าง Measure ไม่ใด้ (ต้องใช้ DAX)

เคสที่มักใช้ Python ใน Power BI คือ เคสที่ต้องวิเคราะห์ข้อมูลด้านคุณภาพ เช่น วิเคราะห์ Sentiment Analysis (วิเคราะห์คอมเมนต์จากลูกค้าว่าเป็น Positive, Negative, Neutral)
ใช้ไลบรารี VADER คำนวณ Polarity Score ใน Power Query ได้เลย 😊

Note: การใช้งาน Python ใน Power BI ต้องติดตั้งโปรแกรมไพธอน (ผมใช้ Anaconda3) และเซ็ตค่าบางอย่างเพิ่มเติม

[ 5. R ]

R ใช้ใน Power BI ได้ 2 รูปแบบ (เช่นเดียวกับ Python)
1. ดึงข้อมูล และแปลงข้อมูล (ใช้ใน Power Query)
2. สร้างกราฟ

แปลว่าเราสามารถใช้ Library dplyr เพื่อแปลงข้อมูลได้
ใช้กราฟล้ำ ๆ จาก ggplot2 หรือไลบรารีอื่น ๆ ได้

ในทางตรงข้าม ใช้ R สร้าง Measure ไม่ใด้

Note: การใช้งาน R ใน Power BI ต้องติดตั้งโปรแกรมเพิ่มเติม (ผมใช้ CRAN R และ R Studio) และเซ็ตค่าบางอย่าง

[ 6. SQL ]

SQL ใช้ในขั้นตอนการดึงข้อมูล (Get Data)

ถ้าเชื่อมต่อกับฐานข้อมูลที่เป็น SQL Base ก็สามารถเขียน SQL Statement เพื่อดึงข้อมูลจากฐานข้อมูลนั้นได้เลย

การดึงข้อมูลด้วย SQL จะจำกัดขอบเขตข้อมูลที่ส่งเข้า Power BI ตั้งแต่ต้นทาง ทำให้ประมวลผลได้เร็วขึ้น

รวมทั้งยังใช้ฟีเจอร์ Incremental Refresh (ดึงเฉพาะข้อมูลใหม่) หรือยังสามารถดึงข้อมูลแบบเรียลไทม์ (Real-time) ได้ด้วย

ถ้าต้องรับมือกับข้อมูลใหญ่ ยังไงก็ต้อง SQL 🙂

[ 7. RDL ]

RDL คือภาษาที่ใช้ในโปรแกรม Power BI Report Builder ใช้สร้างรีพอร์ตที่เรียกว่า Paginated Report

Paginated Report คือรีพอร์ตที่มีลักษณะเป็นตารางยาว ๆ และต้องการจัดรูปแบบให้อ่านได้ง่าย (Pixel-perfect) เช่น รายชื่อลูกค้า 100 คนที่มียอดซื้อสูงสุดในรอบปี พร้อมทั้งยอดซื้อสะสม ณ ปัจจุบัน

รีพอร์ตแบบนี้มักเป็นตารางที่ยาวหลายหน้ากระดาษ ไม่เหมาะกับการสร้างด้วย Power BI Desktop จึงต้องสร้างด้วย Power BI Report Builder

ด้วยความที่ Power BI ถูกออกแบบมาเพื่อสร้างกราฟหรือตารางที่ไม่ยาวมาก ในทางปฏิบัติจึงมีคนใช้ Paginated Report หรือภาษา RDL ค่อนข้างน้อย

[ สรุป ]

อันที่จริง ยังมีภาษาอื่นที่ใช้ใน Power BI เช่น MDX หรือ VB.NET แต่ก็ใช้ค่อนข้างน้อย และเป็นงานเฉพาะทาง
(ผมไม่เคยใช้ เลยไม่กล้าเขียนถึง 😅)

ถ้าเป็นผู้ใช้งานทั่วไป เพียง DAX และ M Code ก็น่าจะเหลือ ๆ

แต่ถ้าต้องการกราฟเฉพาะทาง โดยเฉพาะกราฟที่วิเคราะห์ข้อมูลจำนวนมาก (Box Plot, Violin, Heatmap) อาจต้องพึ่งพา Python, R (ถ้าไม่อยากใช้กราฟใน Custom Visual)

ถ้าต้องการเชื่อมต่อกับข้อมูลขนาดใหญ่ ยังไงก็ต้อง SQL

แม้ตอนนี้จะมี AI แต่พื้นฐานของภาษายังไงก็จำเป็น ยิ่งรู้หลายภาษา ยิ่งได้เปรียบ

ใครว่า Power BI ใช้ง่าย ผมนี่เถียงตายเลย 🙂

Exit mobile version