สิ่งสำคัญของการใช้งาน Power BI ที่ขาดไม่ได้และเป็นเรื่องสำคัญมาก ๆ อย่างหนึ่งนั้นคือ DAX (Data Analysis Expressions) ซึ่งจะมาช่วยคำนวณสรุปผลข้อมูลที่มี โดย DAX จะถูกไปใช้ในการคำนวณ 3 ส่วนหลัก ๆ ได้แก่
Measures – สร้างการคำนวณในรูปแบบของ Aggregation หลาย ๆ แถวในตาราง
Calculated columns – สร้างการคำนวณให้เกิดคอลัมน์ใหม่ เป็นการคำนวณแบบทีละแถว
Calculated table – สร้างการคำนวณให้เกิดตารางใหม่
DAX Function HOUR
แสดงชั่วโมงเป็นตัวเลขตั้งแต่ 0 (12:00 A.M.) ถึง 23 (11:00 P.M.)
รูปแบบของ Syntax
HOUR(<datetime>)
พารามิเตอร์
พารามิเตอร์ | รายละเอียด |
datetime | ค่า วันที่เวลา เช่น 16:48:00 หรือ 4:48 PM |
การคืนค่า
จำนวนเต็มจาก 0 ถึง 23
ข้อสังเกตที่ควรทราบ
ฟังก์ชัน HOUR เป็นการหาเลขชั่วโมงจากค่าของเวลา (datetime) ซึ่งค่าของเวลา (datetime) ที่ระบุในฟังก์ชัน HOUR สามารถเป็นผลลัพธ์จากฟังก์ชัน วันที่/เวลา หรือผลลัพธ์ expression ใดที่ให้ผลลัพธ์เป็นวันที่เวลา หรือจากการพิมพ์ระบุค่าโดยตรงในรูปแบบเวลาที่ถูกต้อง นอกจากนี้ยังสามารถป้อนเวลาในรูปแบบข้อความที่ยอมรับได้
ค่าพารามิเตอร์ datetime หากระบุเป็นวันที่และเวลาแบบข้อความ ฟังก์ชัน HOUR นี้จะใช้การตั้งค่าระบบภาษาและวันที่/เวลาของคอมพิวเตอร์ไคลเอ็นต์ ในการทำความเข้าใจค่าข้อความวันที่และเวลาและดำเนินการแปลงเป็นรูปแบบวันที่เวลา โดยระบบภาษาส่วนใหญ่ใช้เครื่องหมาย Colon (:) เป็นตัวคั่นเวลา ซึ่งหากข้อความเวลาใช้เครื่องหมาย Colon (:) เป็นตัวคั่น จะทำให้แปลงรูปแบบได้อย่างถูกต้อง ฉะนั้นตรวจสอบการตั้งค่าภาษาของเครื่องคอมพิวเตอร์เพื่อทำความเข้าใจผลลัพธ์ของคุณ
ตัวอย่างการใช้งาน
ตัวอย่างการใช้ฟังก์ชัน HOUR ในการสร้างคอลัมน์แสดงเลขชั่วโมงการสั่งซื้อสินค้า
จากตัวอย่างรายละเอียดการขายจากระบบขายหน้าร้านหรือ POS (Point of Sale) ในร้านขายคาเฟ่แห่งหนึ่ง ซึ่งมีข้อมูลตาราง Sales ที่มีรายละเอียดการขายสินค้า ได้แก่ ลำดับคำสั่งซื้อสินค้าอยู่ที่คอลัมน์ transaction_id, เวลาการขายสินค้าที่คอลัมน์ transaction_time, สินค้าที่ขายในแต่ละรายการอยู่ที่คอลัมน์ product_id และยอดขายแต่ละรายการอยู่ที่คอลัมน์ sales amount

จากข้อมูลชุดนี้นอกจากตาราง Sales แล้วยังมีตาราง Products ที่มีรายละเอียดสินค้าตามรายการ product_id

โดยตาราง Sales กับตาราง Products มีการทำ Relationship ระหว่างกันด้วยคอลัมน์ product_id ของแต่ละตาราง

โดยจากข้อมูลการขายดังกล่าว สามารถหายอดขายรวมสินค้า (Total Sales) กับจำนวนคำสั่งซื้อสินค้า (Total Transactions) ด้วยการสร้าง measure Total Sales กับ Total Transactions ดังนี้
Total Sales = SUM(Sales[sales amount])
Total Transactions = COUNT(Sales[transaction_id])
และจากข้อมูลตาราง Sales ซึ่งมีข้อมูลเวลาการขายสินค้าที่คอลัมน์ transaction_time นั้น เราสามารถที่จะนำตัวเลขเฉพาะชั่วโมงการขายออกมา เพื่อแบ่งช่วงเวลาการขายสินค้า เช่น เวลา 12.00 PM – 12.59 PM แทนด้วยเลข 12 หรือ 6.00 PM – 6.59 PM แทนด้วยเลข 18 ด้วยการสร้างคอลัมน์ใหม่ชื่อ transaction (Hour) ซึ่งใช้ฟังก์ชัน HOUR ในการ Calculated columns ดังนี้
transaction (Hour) = HOUR(Sales[transaction_time]) //แสดงเวลาชั่วโมงการสั่งซื้อสินค้า

ตัวอย่างการใช้งาน HOUR ใน Visualization
ในตัวอย่างนี้นำคอลัมน์ใหม่ transaction (Hour) มาแสดงเป็น Visualization
แบบ Stacked column chart ที่แสดงยอดขายรวมสินค้า Total Sales ตามช่วงเวลาการขายสินค้า transaction (Hour) โดยในแต่ละช่วงเวลาการขายจะแบ่งยอดขายรวมสินค้าตามหมวดหมู่สินค้า product_category ซึ่งกราฟนี้ทำให้เห็นมุมมองยอดขายตามช่วงเวลาการขายสินค้า ว่าในแต่ละช่วงเวลาการขายสินค้า หมวดหมู่สินค้าใดขายดี ขายได้เป็นจำนวนเงินเท่าไร และมียอดขายรวมทุกหมวดหมู่สินค้าเป็นจำนวนเงินเท่าไร รวมถึงทราบว่าช่วงเวลาการขายสินค้าใดมียอดขายรวมสินค้าสูงหรือต่ำที่สุด
แบบ Area chart ที่แสดงจำนวนคำสั่งซื้อสินค้า Total Transactions ของแต่ละหมวดหมู่สินค้า product_category ตามช่วงเวลาการขายสินค้า transaction (Hour) ซึ่งกราฟนี้ทำให้เห็นมุมมองจำนวนคำสั่งซื้อของแต่ละหมวดหมู่สินค้าตามช่วงเวลาการขายสินค้า ว่าในแต่ละช่วงเวลาการขายสินค้า มีจำนวนคำสั่งซื้อสินค้าในหมวดหมู่สินค้าใดเป็นจำนวนเท่าไร และหมวดหมู่ใดมีจำนวนคำสั่งซื้อมากกว่ากัน

ข้อมูลอ้างอิงจากเว็บไซต์
แนะนำหลักสูตรการอบรม
เรียนรู้คำสั่ง DAX เพื่อใช้งานด้าน Data Analysis, Data Analytic, BI โดยใช้ Power BI
ในหลักสูตร Data Analysis Expression (DAX) for Power BI (2 Days)
หรือรูปแบบ Online ที่
Power BI for Business Analytics (64 บทเรียน)
https://academy.9experttraining.com/courses/68a46389052c19ad1f71f0b6




