零售資料分析之操作篇12:子查詢的應用
各位資料的朋友,大家好,我是老周道資料,和你一起,用常人思維 +資料分析,透過資料講故事。
上期內容與作業
上一講講了佔比相關記憶體計算的應用場景,包括佔比、 TOP佔比、累計佔比等,不同的佔比,就是分子或分母不同而已,萬變不離其宗。
上一講還給大家出了道作業,就是:如何畫出一個帕累託的統計圖,來看品類銷售是否符合 2-8定律?
上一講專門給大家普及了一下柏拉圖,那我們就來實踐一下。直接進系統。
第一步:新建一個表格
將收入指標放入【彙總】中,將品類指標放入【行維度】中。
第二步:加入累計佔比
點選【收入】旁的【 …】,依次點選【累計佔比】、【行累計佔比】,即可將【收入行累計佔比】放入【彙總】中。
第三步:更換圖表
點選上方的【更換圖表】,選擇柱形圖下的標準圖。
BI資料分析系統 會自動將以柱圖展示收入,用折線展示收入行累計佔比。
到這時,操作基本完成了,只需要再對細節進行雕琢,比如點選右側屬性中【 Y軸1】,找到【值格式】下的【格式】,點選選擇【百分比】;勾選分割線。獲得以下效果:
點選右側【序列】屬性,選擇序列【收入行累計佔比】後,找到【值格式】下的【小數位】,修改成【 2】。這樣在展示收入行累計佔比時就可以顯示兩個小數點。
以上就是上期內容回顧以及作業解答!
本期內容
我們今天講一下子查詢的應用。 所謂子查詢,即某個查詢的結果集( ds2)必須以另外一個結果集(ds1)作為篩選條件。
舉例1:我們想看一下在某個門店賣最好的 TOP十商品在其他門店的銷售情況如何?
在這個例子中,我們首先要查詢獲取某個門店賣最好的TOP 十商品清單,這個結集就是ds1,然後再根據ds1這個結果集來查詢其他門店的銷售情況,也就是ds2。
舉例2:我們要查一年裡買過長 T恤類別的會員,這批會員買過所有品類的數量。
首先要查詢獲取查一年裡買過長 T恤類別的會員清單,這個結果集就是ds1,然後再根據ds1這個結果集來查詢買過所有品類的數量,也就是ds2。( 點一點,瞭解零售標準方案 )
系統實操
1、 在某個門店賣最好的TOP 十商品,在其他門店的銷售情況如何?
操作關鍵: 使用複製資料集的方法
表格 1:分析 在某個門店賣最好的 TOP 十商品
新建表格:將收入指標放入【彙總】中,將商品指標放入【行維度】;接著點選【收入】旁的【 …】,依次點選【排序】、【降序】;然後點選【商品】旁的【…】,依次點選【顯示TOP】、【10】。
之後,增加篩選條件。點選上方【 +】,依次點選【篩選】、【公共篩選】。在新增篩選控制元件小彈窗中,勾選【門店】,點選左下方選擇【下拉{單選}】,點選確定。
表格 2:這 TOP 十商品在其他門店的銷售情況
新建表格並複製表格 1的資料集:將收入指標放入【彙總】中,將商品指標放入【行維度】;點選資料集構建器下,【篩選】旁的【+】,勾選【商品】,點選確定;在條件篩選器中,將【等於】修改成【資料集】,在旁邊的空白框中選擇第一個表格的資料集即grid1,選擇【商品】後點選OK。
這就意味著第二個結果集的商品是來自第一個結果集的商品記錄。
把門店指標新增到【列維度】中,即可看到這 TOP 十商品 在所有門店的銷售情況。
2、我們將這個例子擴充到服裝行業,這時商品會區分款號、顏色,所以,此時我們就需要增加顏色這個維度,篩選條件也需要分別配置。
新建表格 1:將銷售數量指標放到【彙總】中,將商品名稱、顏色名稱放到【行維度】中;之後對銷售數量進行降序,點選【銷售數量】旁的【…】,依次點選【排序】、【降序】;點選【商品名稱】旁的【…】,依次點選【顯示TOP】、【10】。
這時就可以看到賣得最好的 10款商品(含顏色),但顏色總計的出現讓報表顯得不是那麼好看。點選【顏色名稱】旁的【…】,依次點選【總計】、【隱藏總計】。
之後,點選右側【錶行】屬性,關閉【合併行】。即可獲得下圖效果:
新增門店篩選條件:點選上方【 +】,依次點選【篩選】、【公共篩選】。在新增篩選控制元件小彈窗中,勾選【門店】、【門店名稱】,點選左下方選擇【下拉{單選}】,點選確定。
但這個時候明顯不是按照商品顏色款式賣得最好的排序來展現的,這就需要關閉組內排序功能。在進行兩個維度以上的排序時會有一個組內排序的引數。當出現了上訴效果,就需要關閉組內排序。
點選【商品名稱】旁的【 …】,點選【組內排序】。
新增品類篩選條件:點選上方【 +】,依次點選【篩選】、【公共篩選】。在新增篩選控制元件小彈窗中,勾選【商品分類1】,點選左下方選擇【下拉{單選}】,點選確定。
表格 2:看錶格1商品在其他門店的銷售情況
新建表格,將表格 1的資料集複製過來:
點選【資料集】旁的【 +】,選擇表格1的資料集grid1,點選確定。然後點選【grid1】旁的【…】,點選【複製】。
分別點選篩選中的【商品分類 1】、【門店名稱】旁的【…】,點選【刪除】。點選【+】,點選【商品名稱】。在條件篩選器中,將【等於】改成【資料集】,點選選擇【grid1】資料集,點選選擇【商品名稱】後,點選OK。
點選【篩選】旁的【 +】,點選【顏色名稱】,點選確定。在條件篩選器中,將【等於】改成【資料集】,點選選擇【grid1】資料集,點選選擇【顏色名稱】後,點選OK。
這樣就可以確保表格 2篩選條件中的【商品名稱】、【顏色名稱】都與表格1一致。點選右側【錶行】,關掉【合併行】之後效果如下:
然後再將門店名稱放到【行維度】中,即可獲得這 10個不同款式顏色商品在其他門店的銷售情況。
我們注意看一下生成的 SQL : 點選右下角小圖示,調出 SQL,即可看到結果生成的技巧。
3、要查一年裡買過長T恤類別的會員,這批會員買過所有品類的數量。
按照上面的例子進行操作後, 我們會發現生成的 SQL會非常長,因為他會將ds1的所有記錄都列示出來,這樣的話,如果ds1的記錄太多,多到上萬甚至上百萬,那麼這樣的方法會導致SQL過長而報錯,同時,執行的效率也會變慢。所以,針對這樣的場景,奧威BI在最新的產品中,增加了資料集(子查詢)的篩選運算方式。我們來試一下,同樣的場景如何實現。
在資料集構建器下【篩選】項中,點選篩選條件【會員卡 ID】旁的【…】,在條件篩選器中,將【資料集】修改成【資料集(子查詢)】,選擇表格1的資料集【grid1】,點選選擇【會員卡ID】後,點選OK。
然後,我們再查下 SQL就會發現它會變得簡潔很多。
敲黑板 , 講重點
1、 子查詢的應用場景,關鍵就是要先區分誰是 ds1,誰是ds2,然後再透過篩選高ji運算子的方式來實現。
2、 如果子查詢的篩選維度有兩個及以上,則必須要用篩選運算子為資料集這種方式;如果子查詢的篩選維度是 1個,且來源記錄數可能會比較多,則建議使用資料集(子查詢)這種方式,此時可有效避免因生成的SQL語句超長而出錯;但如果子查詢的篩選維度是1個且來源記錄數不多,比如加了TOPN,則兩種方法都可以,效果也沒有什麼區別。
3、 資料集 (子查詢)這種篩選方式,僅限奧威BI最新微服務版本。
最後,給大家出一道作業:
全公司最好賣的 10款商品, 在 哪 5個門店賣的最好?
下一講,我們會講一下同一張報表中各圖表間任意聯動,來實現特定分析思路的應用場景,敬請期待。
老周道資料,和你一起,用常人思維 +資料分析,透過資料講故事,我們下一講再見!
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70024013/viewspace-2945056/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 零售資料分析之操作篇11:銷售佔比分析
- 零售資料分析之操作篇10:銷售排名與TOP分析
- 零售資料分析之操作篇8:用歷史聚合巧算庫存
- 零售資料分析操作篇15:用總聚合做銷售分析
- 零售資料分析之操作篇9:用歷史聚合計算歷史銷售SKU數
- MySQL資料庫基礎——多表查詢:子查詢MySql資料庫
- MySQL與PHP的基礎與應用專題之資料查詢SRBFMySqlPHP
- MySQL之連線查詢和子查詢MySql
- SQL Server資料庫之datepart和datediff應用查詢當天上午和下午的資料SQLServer資料庫
- MySQL全面瓦解12:連線查詢的原理和應用MySql
- 零售資料分析操作篇7:分析售罄率,決定何時做促銷
- 資料庫學習(五)子查詢資料庫
- FFmpeg應用實踐之命令查詢
- cmdb 查詢資料庫操作記錄資料庫
- 零售資料分析操作篇14:利用記憶體計算做銷售篩選分析記憶體
- 《MySQL 基礎篇》四:查詢操作MySql
- 使用nodejs應用查詢SAP HANA Express Edition裡的資料NodeJSExpress
- 使用PHP應用查詢SAP HANA Express Edition裡的資料PHPExpress
- 物聯網之智慧農業應用分析&大資料之資料探勘技術的應用大資料
- SQL查詢的:子查詢和多表查詢SQL
- python資料庫-mongoDB的高階查詢操作(55)Python資料庫MongoDB
- SQL的資料庫操作:新增、更新、刪除、查詢SQL資料庫
- C# 資料操作系列 - 12 NHibernate的增刪改查C#
- NOT IN之後的子查詢不能包含NULL值Null
- 資料庫全表查詢之-分頁查詢優化資料庫優化
- Python資料分析之Pandas篇Python
- Oracle OCP(14):使用子查詢檢索資料Oracle
- 造輪子之單層應用總結篇
- 金融案例:統一查詢方案助力資料治理與分析應用更高效、更安全
- python資料庫-MySQL資料庫高階查詢操作(51)Python資料庫MySql
- 複雜查詢—子查詢
- 《MySQL 入門教程》第 19 篇 子查詢MySql
- 9- ABC模型之資料分析和應用模型
- MySQL 查詢效能分析之 ExplainMySqlAI
- MySQL 優化五(關聯查詢子查詢以及 in 的效率問題)(高階篇)MySql優化
- 通過bundle Id查詢應用資訊
- BZOJ 3589 動態樹(子樹操作,鏈查詢)
- ORACLE_OCP之SQL_子查詢OracleSQL