select count(*),c_xy_bj a from z_user group by c_xy_bj     这个group by后面不能使用c_xy_bj 字段的别名a,只有外面再嵌套select查询才能使用字段别名a
select c_xy_bj a from z_user where c_xy_bj = 'Y'      这个where后面不能使用c_xy_bj 字段的别名a,只有外面再嵌套select查询才能使用字段别名a

同理,两个字段加减乘除算出来的值,如果取别名,想通过别名来做查询条件,那么也只能再外面嵌套select查询时才能用做条件;但是如果用原字段来查询是可以的。

select c_usernm,c_xy_bj,c_usernm||c_xy_bj ub from z_user where c_usernm||c_xy_bj = '陈明辉Y'      这个sql是可以的。

select c_usernm,c_xy_bj,c_usernm||c_xy_bj ub from z_user where ub = '陈明辉Y'    这个sql是不行的。

1.where 条件不能放在 group by后面,比如这个sql就是错误的:select count(*),c_xy_bj a from z_user group by c_xy_bj where c_xy_bj = 'Y'

2.group by后面只能使用having来做查询,having查询本来也是分组之后进行的查询,接下来这两个sql才是对的:select count(*),c_xy_bj a from z_user group by c_xy_bj having c_xy_bj = 'Y'

select count(*) cnt,c_xy_bj a from z_user group by c_xy_bj having count(*) = 28

3.对分组函数得到的结果进行查询不能使用where,只能使用having,实在没有使用group by进行分组的情况下也可以使用having来查询分组函数得到的结果

select count(*) cnt from z_user where count(*) = 5062 这个sql是错的

select count(*) cnt from z_user having count(*) = 5062 这个sql是对的

group by 和where 条件后面不能用刚设置的别名。的更多相关文章

  1. 根据条件决定是否为input设置只读属性

    代码如下: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <tit ...

  2. SQL分组多列统计(GROUP BY后按条件分列统计)

    as tjsl from fyxx group by zt,whbmbh end) as ybhsl from fyxx group by whbmbh 下面是摘自别人的博客 最近遇到一个问题,需要对 ...

  3. 【数据库】SQL分组多列统计(GROUP BY后按条件分列统计)

    select whbmbh ,zt,1 as tjsl from fyxx group by zt,whbmbh select whbmbh,sum(case zt when '有效' then 1 ...

  4. group by两个条件

    学生表: 成绩表: 问题:统计各系各门课程的平均成绩 答案: select sdept,cno,AVG(grade)avg_grade from S join SC on S.sno = SC.sno ...

  5. 关于group by 两个或以上条件的分析

    关于group by 两个或以上条件的分析     原文地址:http://uule.iteye.com/blog/1569262 博客分类: 数据库   首先group by 的简单说明: grou ...

  6. 数据库关于group by 两个或以上条件的分析

    首先group by 的简单说明:    group by 一般和聚合函数一起使用才有意义,比如 count sum avg等,使用group by的两个要素:    (1) 出现在select后面的 ...

  7. group by 两个或以上条件的分析

    首先group by 的简单说明: group by 一般和聚合函数一起使用才有意义,比如 count sum avg等,使用group by的两个要素:   (1) 出现在select后面的字段 要 ...

  8. 【转】Linq Group by

    http://www.cnblogs.com/death029/archive/2011/07/23/2114877.html 1.简单形式: var q = from p in db.Product ...

  9. group by 和聚合函数

    group by 的基本用法 group by做为分组来使用,后面为条件,可以有多个条件,条件相同的为一组,配合聚合函数进行相关统计.在不同数据库中用法稍有不同,这里只测试mysql和oracle. ...

随机推荐

  1. Python split()

    split翻译为分裂.  split()就是将一个字符串分裂成多个字符串组成的列表. split()当不带参数时以空格进行分割,当代参数时,以该参数进行分割. //---当不带参数时 example: ...

  2. easyui combogrid下拉表格的分页/按键/动态搜索

    作者:xfl4629712  <  easyui combogrid下拉表格的分页/按键/动态搜索  > 需求: 1.下拉框下拉时出现表格: 2.表格带分页功能: 3.可以使用向上键.向下 ...

  3. 断路器Feign

    Feign是自带断路器,需要在配置文件中开启断路器 改造消费者项目(FeignDemo) 1.在application.yml配置文件中开启断路器 eureka: client: service-ur ...

  4. js之DOM对象三

      一.JS中for循环遍历测试 for循环遍历有两种 第一种:是有条件的那种,例如    for(var i = 0;i<ele.length;i++){} 第二种:for (var i in ...

  5. Layer-level的快速算法

    十岁的小男孩 本文为终端移植的一个小章节. Sparse Block Net 本节为优化加速的第二章节,主要介绍Sparse-block net.上章节为OP算子层的加速,本节为层级间的加速,主要针对 ...

  6. MySQL----数据库练习

    一.多对多的正反向查询 class Class(models.Model): name = models.CharField(max_length=32,verbose_name="班级名& ...

  7. hdu4276 依赖背包

    网上题解都是用spfa求1-n路径的,但其实dfs一次就可以了.. #include <iostream> #include <cstdio> #include <str ...

  8. uva11865 二分流量+最小生成树

    uva好题真多 本题用二分法找flow,把流量小于flow的全部筛掉,剩下的边建立最小树形图,如果权值大于c或者不能建图,那么修改二分边界 上代码,觉得最小树形图的代码很优美 /* 题意:给定n个点, ...

  9. CF 1042F

    玄学贪心... 题意:给出一棵树,要求将他的所有叶节点分成最少的组,且在每组中的任意两节点之间的距离不大于k 解析: 显然是个贪心啦... 稍微考虑一下贪心思想: 我们从下向上合并整棵树,在合并到某个 ...

  10. OrCAD Capture CIS 16.6 导出BOM

    OrCAD Capture CIS 16.6 一.选择设计文件:菜单:Tools > Bill of Materials... 二.Bill of Materials > Open in ...