建立Microsoft SQL Server 2005數據倉庫
這幾天用了一下Microsoft SQL Server 200的分析服務,貼出來給大家分享一下。請多多指正。謝謝。一、需求:建立一個圖書訂單統計系統1、統計各個圖書館訂單數量。2、統計各個圖書館訂單的各個狀態的數量占該圖書館的訂單數量的百分比。3、同時統計原始數量和儲運數量二、數據表主要的字段訂單ID單位號(圖書館編號)單位(圖書館名稱)原始數量儲運數量最新狀態(該訂單當前狀態)三、實現:1、打開Visual Studio 2005 新建項目,選擇Analysis Services項目,選擇數據源文件夾,新建數據源:新建數據源向導啟動:點擊上圖新建出現連接配置對話框配置方法和鏈接數據庫的配置方法相同。配置連接數據源的帳號,以后就是一路下一步:)選擇數據源視圖文件夾,新建一個數據源視圖選擇含有統計數據的表,以后就是一路下一步:)選擇多維數據集文件夾,新建多維數據集也就是一個Cube設置事實表和維度表選擇度量值,也就是如果是SQL就是需要count,sum等要統計的數據
取消所有選項,然后選擇維度也就是SQL里面GROUP by的字段(這里我選擇了“最新狀態”和“單位”)選擇如上,這個不是最終結果,后面還要手工編輯。,以后就是一路下一步:)
通過瀏覽打開編輯維度。建立一個層次結構,單位在上,狀態在下。
把“圖書分銷 訂單 計數”重名名為“訂單數量”
修改后如上圖切換到瀏覽器,拖放單位到行位置。再拖放最新狀態到行,最終效果如下。拖放顯示的數據,也就是明細
拖放完畢效果設置顯示為百分比最終效果打開Microsoft SQL Server 2005 的SQL Server Management Studio連接到分析服務新建查詢,查詢結果如圖查詢語句如下:with set [AllCount] as '[圖書分銷 訂單].[層次結構].[單位].[安徽大學;;圖書館].Children'Member [圖書分銷 訂單].[層次結構].[單位].[安徽大學;;圖書館].[合計] as 'aggregate([AllCount])'Member [所占訂單數百分比] as '[訂單數量]/([訂單數量],[圖書分銷 訂單].[層次結構].[單位].[安徽大學;;圖書館].[合計])',format_string='#.00%'select {[Measures].[訂單數量],[Measures].[儲運數量],[Measures].[原始數量],[所占訂單數百分比]} on columns,{[圖書分銷 訂單].[層次結構].[單位].[安徽大學;;圖書館].Children} on rowsfrom [圖書館統計]其實也不是很難哦有時間下次寫在 ASP .NET 2.0里面如何顯示查詢結果。