比如有下面三张表,用With as  、Group By语法解决几个问题;

with as :  可以用来创建临时表,作为过度的表;

group by:   按照某个字段来分类;

对应字段如下:

Sales     empNo  salDate   City    Client   sal                emp       empNo  ename             visit       empNo   visitDate   Client  visitTimes

         

问题一:查出每个员工每个月的总销售额

分析:这里每个员工(即表中所有员工都要列出,哪怕没有销售额) , 每个月的总销售额(按月份进行累计) 、总销售额(SUM()函数)

select emp.ename ,sales.saldate, sum(sales.sal) from emp left join sales

on emp.empno=sales.empno group by emp.ename,sales.saldate;

   

问题二:查出每个员工每个月总的拜访次数

分析:这里和问题一类似代码如下

select emp.ename ,visit.visitdate ,sum(visit.vistimes)
               from emp left join visit on emp.empno=visit.empno
              group by emp.ename,visit.visitdate;

问题三:查出每个员工每个城市的销售额

分析:  这里就是按照员工 、初始来分组求和

问题四:列出全年销售额从大到小员工排序及其全年销售额

问题五:列出每个员工当年的销售额和拜访次数

分析:这里可以拆开两张表,一张总销售额表和一张总拜访次数表

问题六:查出拜访次数最多的员工的全年销售额

总结 :   with as 作用可以理解为临时表,为了临时用到而先得到的表,好像也可以理解为视图什么的,虽然视图现在还不是明白什么。

With

临时表名(TempTable)  As (select   字段  from  表名),

临时表名(TempTable)  As (select   字段  from  表名)

.......................................................

最新文章

  1. HTTP请求 GET POST 网络编程实现
  2. jQuery 事件
  3. Android--UI之AutoCompleteTextView
  4. selenium and win32api
  5. sql查询指定范围内的所有月份
  6. jquery的.submit
  7. struts2常用的常量constant(转)
  8. vue数据绑定原理
  9. 解决linux AMR转MP3出现转码成功却无法播放的问题
  10. Django之AppConfig源码学习
  11. SVG的动态之美-搜狗地铁图重构散记
  12. Elasticsearch一些使用笔记(持续更新)
  13. [Swift]LeetCode529. 扫雷游戏 | Minesweeper
  14. 看我如何未授权登陆某APP任意用户(token泄露实例)
  15. SpringBoot-性能优化之扫包优化
  16. Python基础【day02】:数据运算(二)
  17. 潭州课堂25班:Ph201805201 MySQL第一课 (课堂笔记)
  18. 枚举+最短路 poj1062
  19. git版本超前了N个版本且落后了N个版本的解决办法
  20. C# HtmlAgilityPack和AngleSharp 解析HTML

热门文章

  1. Spring Boot整合Rabbitmq
  2. QQ控件时光轴特效总结
  3. PostgreSQL 9.5 客户端认证
  4. Flash在线签名小程序,可回放,动态导出gif图片
  5. mybatis如何防止sql注入(1)
  6. mybatis---demo1--(n-n)----bai
  7. windows异常演示,指定异常类型,然后生成异常
  8. python中引号中有双引号
  9. C#改变LInqToSQL的引用地址,读取config的数据库字符串
  10. 使用SQL Server保存Session状态,实现单点登录