zoukankan      html  css  js  c++  java
  • 分组查询,视图,行列转置

    一:   GROUP BY对查询结果进行分组

                  利用SQL GROUP  BY子句,能够快速而简便地将查询结果表按照指定的字段进行分组,值相等的记录分为一组。GROUP  BY子句一般和SQL聚合函数起使用。

    【基本格式】:
         SELECT  <字段表达式>  FROM  <表名  GROUP  BY  <字段名>
     
    二:视图
    1.视图的定义:
    (1).视图是一虚拟表它表示一张表的部分数据或多张表的综合数据,其结构和数据是建立在对表的查询基础上
    (2).视图中并不存放数据,而是存放在视图所引用的原始表(基表)中
    (3).同一张原始表,根据不同用户的不同需求,可以创建不同的视图
     
    2.视图的用途
    (1)筛选表的行
    (2)防止未经许可的用户访问敏感数据
    (3)降低数据库的复杂程度
    (4)多个物理数据库抽象为一个逻辑数据库
     
    三: 行列转置
    declare @sqlstr varchar(8000)
    set @sqlstr='select [TransID],[KeyNO]'
    //读取出所要转置的列信息
    SELECT @sqlstr=@sqlstr + ',(SELECT sum([Expr4]) fee FROM [BEST].[dbo].[View_temp] group by expr1 having [Expr1]='''+Expr1+''') as ['+Expr1+']'  
    FROM [BEST].[dbo].[View_temp] group by [Expr1]
    //根据读取出的转置的列信息拼接sql
    Select @sqlstr = @sqlstr+',[SSJE],[YFJE],[MLJE],ZLJE from [View_temp] group by [KeyNO],[TransID],[SSJE],[YFJE],[MLJE],ZLJE'
    //执行sql
    Exec (@sqlstr)
    //输出拼接的sql
     
    print @sqlstr
     
     
     
     
     
         
     
     
     
  • 相关阅读:
    windows安装MongoDB进度条卡住,window安装mongo系统错误 2,系统错误5的解决办法(转载)
    大前端涉猎之前后端交互总结3:使用PHP进行表单数据删除与查询
    异常处理
    java 触发鼠标点击事件 向linux发送指令
    反射机制
    静态方法,类方法,属性方法
    python 类
    python 正则表达式
    python 加密模块
    python xml 与配置文件处理
  • 原文地址:https://www.cnblogs.com/ProgrammerGE/p/2811805.html
Copyright © 2011-2022 走看看