เก่งโค้ดงาน Business Intelligence ตอนที่ 7
การใช้คิวรีอื่นเป็นดาต้าซอร์ส
| Month | Product | Sales |
|---|---|---|
| January | Apples | 1 |
| February | Apples | 2 |
| March | Apples | 3 |
| January | Oranges | 10 |
| February | Oranges | 12 |
| March | Pears | 14 |
| January | Pears | 20 |
| February | Pears | 23 |
| March | Pears | 26 |
| Product |
|---|
| apples |
คิวรีแบบมีพารามิเตอร์
| Month | Product | Sales |
|---|---|---|
| January | Apples | 1 |
| February | Apples | 2 |
| March | Apples | 3 |
ส่วนที่เราควรจะเปลี่ยนให้กลายเป็นพารามิเตอร์คือคำว่า Apples ในบรรทัดที่ 18 คิวรีเป็นอย่างที่เห็นในบรรทัด 22-28 ผู้ใช้สามารถป้อนอินพุตพารามิเตอร์ได้โดยใส่ในเซลศูนย์ของตาราง Product
วิธีแก้ไขปัญหานี้ทำได้โดยแบ่งการทำงานออกเป็นสองบรรทัดคำสั่งอย่างที่เห็นในรูปที่ 3 บรรทัดที่ 6 เป็นคำสั่งบรรทัดแรก ทำหน้าที่อ่านค่า WeekDay จากเซลที่กำหนด บรรทัดที่ 7-11 เป็นคำสั่งบรรทัดที่สอง เมื่อแยกออกเป็นสองคิวรีเช่นนี้จะมีผลให้เมื่อรันแล้วไม่แสดงข้อความว่า “Permission is required to run this native database query” และคิวรีสามารถทำงานได้ โดยมีข้อแม้ว่าเวิร์กบุ๊คและซีค่วลเซอฟเวอร์จะต้องถูกกำหนดค่าความปลอดภัยไว้ในระดับพับลิกหรือระดับองค์กรตรงกันทั้งคู่
การเชื่อมต่อข้อมูล
| Month | Product | Sales |
|---|---|---|
| January | Apples | 1 |
| February | Apples | 2 |
| March | Apples | 3 |
| Month | Product | Profit |
|---|---|---|
| January | Apples | 100 |
| February | Apples | 200 |
| March | Apples | 300 |
| Month | Product | Sales | Profit |
|---|---|---|---|
| January | Apples | 1 | null |
| February | Apples | 2 | null |
| March | Apples | 3 | null |
| January | Apples | null | 100 |
| February | Apples | null | 200 |
| March | Apples | null | 300 |
การจอยตาราง
การหาร้อยละของผลรวม
| Product | Sales |
| Apples | 5 |
| Oranges | 7 |
| Pears | 8 |
| Grapes | 3 |
| Product | Sales | Share |
| Apples | 5 | 0.217391304 |
| Oranges | 7 | 0.304347826 |
| Pears | 8 | 0.347826087 |
| Grapes | 3 | 0.130434783 |
บรรทัด 5-6 โหลดข้อมูลมาจากตารางในโปรแกรมไมโครซอฟท์เอ็กซ์เซล
บรรทัด 9-10 หายอดรวมของการขายนำไปใส่เป็นตาราง GrandTotal
บรรทัด 11 นำค่าผลรวมจากตาราง GrandTotal มากำหนดให้ตัวแปร GrandTotal
บรรทัด 16 กำหนดให้ตัวแปร Custom1 อ้างไปยังดาต้าซอร์ส (ตาราง PercentageShareOfTotalInput)
บรรทัด 19 แทรกคอลัมน์ชื่อ Share เข้าไปในตาราง GrandTotal ใส่ค่าในแต่ละแถวเป็นผลคำนวณยอดขายหารด้วยยอดรวม
| Date | Sales |
|---|---|
| 1-Jan-2019 | 1 |
| 2-Jan-2019 | 2 |
| 3-Jan-2019 | 2 |
| 4-Jan-2019 | 3 |
| 5-Jan-2019 | 5 |
| 6-Jan-2019 | 7 |
| Date | Sales | PercentageSalesGrowth |
|---|---|---|
| 1/1/2019 | 1 | |
| 1/2/2019 | 2 | 1 |
| 1/3/2019 | 2 | 0 |
| 1/4/2019 | 3 | 0.5 |
| 1/5/2019 | 5 | 0.666666667 |
| 1/6/2019 | 7 | 0.4 |