SQL学习(7)分组查询group by
来源:互联网 发布:excel数据转换到word中 编辑:程序博客网 时间:2024/04/20 09:01
这个都不知道的话就不用向下看了
多说一句,select后面的没有使用聚合函数的列必须出现在group by 后面。这个是新人常犯的错误。
2. group by和all关键字
只有在slect语句中有where子句时,all关键字才有意义
使用all关键字的时候,结果会显示group by子句产生的所有组,包括那些不符合where条件的。
3. group by 字段 with rollup
显示所选列中值的某一层次组合的汇总。
例如:成绩表s (grade,class,sname,score)
年级汇总
Select grade as 年级,avg(score) as 平均分 from s group by grade wirh rollup
班级汇总,然后年级汇总
Select grade as 年级,class as 班级,avg(score) as 平均分 from s group by grade,class wirh rollup
4. group by 字段 with cube
显示所选列中值的所有组合的汇总。
5. grouping()函数
聚合函数:当行由 CUBE 或 ROLLUP 运算符添加时,该函数将导致附加列的输出值为 1;当行不由 CUBE 或 ROLLUP 运算符添加时,该函数将导致附加列的输出值为 0。仅在与包含 CUBE 或 ROLLUP 运算符的 GROUP BY 子句相关联的选择列表中才允许分组。、
这个函数可以帮助我们把那些空值替换为我们想要显示的文字。例如:
Select case when (grouping(grade)=1) then ‘年级平均’ else grade end as 年级,
case when (grouping(class)=1) then ‘班级平均’ else class end as 班级,
avg(score) as 平均分 from s group by grade,class wirh rollup
6. 创建视图
with cube生成的结果数据会有很多行,为了更好的阅读,我们可以把这个结果放到视图里面。然后就可以根据我们的需要(where条件)从视图里面select。
7. group by …having…
where是对表中的数据(行)进行筛选,having是对满足where条件的组进行筛选。
- SQL学习(7)分组查询group by
- SQL分组查询group by
- SQL group by分组查询
- SQL group by分组查询
- SQL group by分组查询
- SQL 分组(group by)
- sql group by分组 + 关联查询
- Sql- Group By ,having 分组查询
- group by分组查询
- GROUP BY 分组查询
- Sql Server子查询、GROUP BY分组、having查询
- Sql Server子查询、GROUP BY分组、having查询
- SQL中group by分组查询的内容(包含to_char和order by)
- SQL 数据库 学习 027 查询-10 group by --- 以某字段分组
- GROUP BY分组查询与SQL执行顺序
- GROUP BY分组查询与SQL执行顺序
- 数据库排名sql,group by 分组查询按照时间最大值
- GROUP BY分组查询与SQL执行顺序
- 【android基础学习之三】——基础控件Toast,EditText,RadioGroup,RadioButton
- do_generic_file_read()函数
- extjs Ext.Ajax.request 从后台得到 String 字符串 在页面显示器内容
- 内存区划分、内存分配、常量存储区、堆、栈、自由存储区、全局区(c++)(二)
- setuid和setgid
- SQL学习(7)分组查询group by
- pgp key
- jQuery live() 实现方法
- http://mirrors.163.com/ubuntu-releases/11.10/
- 解决screen off 后service中的sensor不传数据问题
- linux下网络编程(TCP)
- ssh tunnel
- 数据库的启动停止命令
- Google的面试题