零售資料分析之操作篇12:子查詢的應用

ourway發表於2023-04-11

各位資料的朋友,大家好,我是老周道資料,和你一起,用常人思維 +資料分析,透過資料講故事。

上期內容與作業

上一講講了佔比相關記憶體計算的應用場景,包括佔比、 TOP佔比、累計佔比等,不同的佔比,就是分子或分母不同而已,萬變不離其宗。

上一講還給大家出了道作業,就是:如何畫出一個帕累託的統計圖,來看品類銷售是否符合 2-8定律?

上一講專門給大家普及了一下柏拉圖,那我們就來實踐一下。直接進系統。

第一步:新建一個表格

將收入指標放入【彙總】中,將品類指標放入【行維度】中。

第二步:加入累計佔比

點選【收入】旁的【 …】,依次點選【累計佔比】、【行累計佔比】,即可將【收入行累計佔比】放入【彙總】中。

第三步:更換圖表

點選上方的【更換圖表】,選擇柱形圖下的標準圖。

BI資料分析系統 會自動將以柱圖展示收入,用折線展示收入行累計佔比。

奧威BI零售資料分析  

到這時,操作基本完成了,只需要再對細節進行雕琢,比如點選右側屬性中【 Y軸1】,找到【值格式】下的【格式】,點選選擇【百分比】;勾選分割線。獲得以下效果:

奧威BI零售資料分析  

點選右側【序列】屬性,選擇序列【收入行累計佔比】後,找到【值格式】下的【小數位】,修改成【 2】。這樣在展示收入行累計佔比時就可以顯示兩個小數點。

以上就是上期內容回顧以及作業解答!

本期內容

我們今天講一下子查詢的應用。 所謂子查詢,即某個查詢的結果集( ds2)必須以另外一個結果集(ds1)作為篩選條件。

舉例1:我們想看一下在某個門店賣最好的 TOP十商品在其他門店的銷售情況如何?

在這個例子中,我們首先要查詢獲取某個門店賣最好的TOP 商品清單,這個結集就是ds1,然後再根據ds1這個結果集來查詢其他門店的銷售情況,也就是ds2。

舉例2:我們要查一年裡買過長 T恤類別的會員,這批會員買過所有品類的數量。

首先要查詢獲取查一年裡買過長 T恤類別的會員清單,這個結果集就是ds1,然後再根據ds1這個結果集來查詢買過所有品類的數量,也就是ds2。( 點一點,瞭解零售標準方案

系統實操

1、 在某個門店賣最好的TOP 商品,在其他門店的銷售情況如何?

操作關鍵: 使用複製資料集的方法

表格 1:分析 在某個門店賣最好的 TOP 商品

新建表格:將收入指標放入【彙總】中,將商品指標放入【行維度】;接著點選【收入】旁的【 …】,依次點選【排序】、【降序】;然後點選【商品】旁的【…】,依次點選【顯示TOP】、【10】。

之後,增加篩選條件。點選上方【 +】,依次點選【篩選】、【公共篩選】。在新增篩選控制元件小彈窗中,勾選【門店】,點選左下方選擇【下拉{單選}】,點選確定。

奧威BI零售資料分析  

表格 2:這 TOP 商品在其他門店的銷售情況

新建表格並複製表格 1的資料集:將收入指標放入【彙總】中,將商品指標放入【行維度】;點選資料集構建器下,【篩選】旁的【+】,勾選【商品】,點選確定;在條件篩選器中,將【等於】修改成【資料集】,在旁邊的空白框中選擇第一個表格的資料集即grid1,選擇【商品】後點選OK。

這就意味著第二個結果集的商品是來自第一個結果集的商品記錄。

奧威BI零售資料分析  

把門店指標新增到【列維度】中,即可看到這 TOP 商品 在所有門店的銷售情況。

奧威BI零售資料分析  

 

2、我們將這個例子擴充到服裝行業,這時商品會區分款號、顏色,所以,此時我們就需要增加顏色這個維度,篩選條件也需要分別配置。

新建表格 1:將銷售數量指標放到【彙總】中,將商品名稱、顏色名稱放到【行維度】中;之後對銷售數量進行降序,點選【銷售數量】旁的【…】,依次點選【排序】、【降序】;點選【商品名稱】旁的【…】,依次點選【顯示TOP】、【10】。

這時就可以看到賣得最好的 10款商品(含顏色),但顏色總計的出現讓報表顯得不是那麼好看。點選【顏色名稱】旁的【…】,依次點選【總計】、【隱藏總計】。

之後,點選右側【錶行】屬性,關閉【合併行】。即可獲得下圖效果:

奧威BI零售資料分析  

新增門店篩選條件:點選上方【 +】,依次點選【篩選】、【公共篩選】。在新增篩選控制元件小彈窗中,勾選【門店】、【門店名稱】,點選左下方選擇【下拉{單選}】,點選確定。

但這個時候明顯不是按照商品顏色款式賣得最好的排序來展現的,這就需要關閉組內排序功能。在進行兩個維度以上的排序時會有一個組內排序的引數。當出現了上訴效果,就需要關閉組內排序。

點選【商品名稱】旁的【 …】,點選【組內排序】。

奧威BI零售資料分析  

 

奧威BI零售資料分析  

新增品類篩選條件:點選上方【 +】,依次點選【篩選】、【公共篩選】。在新增篩選控制元件小彈窗中,勾選【商品分類1】,點選左下方選擇【下拉{單選}】,點選確定。

表格 2:看錶格1商品在其他門店的銷售情況

新建表格,將表格 1的資料集複製過來:

點選【資料集】旁的【 +】,選擇表格1的資料集grid1,點選確定。然後點選【grid1】旁的【…】,點選【複製】。

分別點選篩選中的【商品分類 1】、【門店名稱】旁的【…】,點選【刪除】。點選【+】,點選【商品名稱】。在條件篩選器中,將【等於】改成【資料集】,點選選擇【grid1】資料集,點選選擇【商品名稱】後,點選OK。

點選【篩選】旁的【 +】,點選【顏色名稱】,點選確定。在條件篩選器中,將【等於】改成【資料集】,點選選擇【grid1】資料集,點選選擇【顏色名稱】後,點選OK。

這樣就可以確保表格 2篩選條件中的【商品名稱】、【顏色名稱】都與表格1一致。點選右側【錶行】,關掉【合併行】之後效果如下:

奧威BI零售資料分析  

然後再將門店名稱放到【行維度】中,即可獲得這 10個不同款式顏色商品在其他門店的銷售情況。

我們注意看一下生成的 SQL 點選右下角小圖示,調出 SQL,即可看到結果生成的技巧。

奧威BI零售資料分析  

 

3、要查一年裡買過長T恤類別的會員,這批會員買過所有品類的數量。

按照上面的例子進行操作後, 我們會發現生成的 SQL會非常長,因為他會將ds1的所有記錄都列示出來,這樣的話,如果ds1的記錄太多,多到上萬甚至上百萬,那麼這樣的方法會導致SQL過長而報錯,同時,執行的效率也會變慢。所以,針對這樣的場景,奧威BI在最新的產品中,增加了資料集(子查詢)的篩選運算方式。我們來試一下,同樣的場景如何實現。

在資料集構建器下【篩選】項中,點選篩選條件【會員卡 ID】旁的【…】,在條件篩選器中,將【資料集】修改成【資料集(子查詢)】,選擇表格1的資料集【grid1】,點選選擇【會員卡ID】後,點選OK。

奧威BI零售資料分析  

然後,我們再查下 SQL就會發現它會變得簡潔很多。

 

敲黑板 講重點

1、  子查詢的應用場景,關鍵就是要先區分誰是 ds1,誰是ds2,然後再透過篩選高ji運算子的方式來實現。

2、  如果子查詢的篩選維度有兩個及以上,則必須要用篩選運算子為資料集這種方式;如果子查詢的篩選維度是 1個,且來源記錄數可能會比較多,則建議使用資料集(子查詢)這種方式,此時可有效避免因生成的SQL語句超長而出錯;但如果子查詢的篩選維度是1個且來源記錄數不多,比如加了TOPN,則兩種方法都可以,效果也沒有什麼區別。

3、  資料集 (子查詢)這種篩選方式,僅限奧威BI最新微服務版本。

 

最後,給大家出一道作業:

全公司最好賣的 10款商品, 5個門店賣的最好?

 

下一講,我們會講一下同一張報表中各圖表間任意聯動,來實現特定分析思路的應用場景,敬請期待。

 

老周道資料,和你一起,用常人思維 +資料分析,透過資料講故事,我們下一講再見!


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70024013/viewspace-2945056/,如需轉載,請註明出處,否則將追究法律責任。

相關文章