zoukankan      html  css  js  c++  java
  • 建立Microsoft SQL Server 2005数据仓库

    建立Microsoft SQL Server 2005数据仓库

    这几天用了一下Microsoft SQL Server 2005的分析服务,贴出来给大家分享一下。
    请多多指正。谢谢。

    一、需求:
    建立一个图书订单统计系统
    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 rows
    from [图书馆统计]

    其实也不是很难哦

  • 相关阅读:
    BZOJ 1101 莫比乌斯函数+分块
    BZOJ 2045 容斥原理
    BZOJ 4636 (动态开节点)线段树
    BZOJ 2005 容斥原理
    BZOJ 2190 欧拉函数
    BZOJ 2818 欧拉函数
    BZOJ 3123 主席树 启发式合并
    812. Largest Triangle Area
    805. Split Array With Same Average
    794. Valid Tic-Tac-Toe State
  • 原文地址:https://www.cnblogs.com/winner/p/615882.html
Copyright © 2011-2022 走看看