首页 > 数据库 >SQL—分组过滤group by函数与having函数

SQL—分组过滤group by函数与having函数

时间:2023-03-21 23:34:32浏览次数:47  
标签:cnt group 函数 question SQL avg 发帖数 having

题目:查看每个学校的平均发帖数(avg_question_cnt)和平均回帖数(avg_answer_cnt),并取出平均发帖数小于5的学校和平均回帖数小于20的学校。(保留3位小数)

大佬的分解:

1、限定条件:平均发帖数小于5和平均回帖数小于20的学校:avg_question_cnt<5 and avg_answer_cnt<20

##重点:聚合函数结果作为筛选条件时,不能用where,选择用having

2、按学校输出:对每个学校计算平均回帖数和平均发帖数group by university

细节问题:

1、重命名用as

2、用having,不用where

代码示例:

select

university,

round(avg(question_cnt),3) as avg_question_cnt,

round(avg(answer_cnt),3) as avg_answer_cnt

from user_profile

group by university

having avg_question_cnt<5 and avg_answer_cnt<20

 

标签:cnt,group,函数,question,SQL,avg,发帖数,having
From: https://www.cnblogs.com/buki233/p/17242062.html

相关文章

  • 函数
    /*1美丽数字题目描述Alice很喜欢6这个数字,如果一个整数能被6整除或者它的任何一位包含6就被认为是美丽数字,输入为一个整数a,请帮Alice计算一下小于等于a的正整数有多少美......
  • MySQL基础:函数
    MySQL基础:函数函数是指一段可以直接被另一段程序调用的程序或代码。字符串函数MySQL中内置了很多字符串函数,常用的几个如下:函数功能CONCAT(S1,S2,...Sn)字符......
  • MySQL随记
    1、orvsunion对于单列来说,用or是没有任何问题的,但是or涉及到多个列的时候,每次select只能选取一个index,如果选择了area,population就需要进行table-scan,即全部扫描一遍,但......
  • 建立一个对象数组,内放5个学生的数据(学号、成绩),设立一个函数max,用指向对象的指针做函数
    #include<iostream>usingnamespacestd;classStudent{public: voidmax(int*p,float*t);};voidStudent::max(int*p,float*t){ inti; inta=0,b; for(i=0;i<......
  • MySQL介绍
    MySQL数据库最初是由瑞典MySQLAB公司开发,2008年1月16号被Sun公司收购。2009年,SUN又被Oracle收购。MySQL是目前IT行业最流行的开放源代码的数据库管理系统,同时它也是一个支......
  • MySQL介绍
    MySQL数据库最初是由瑞典MySQLAB公司开发,2008年1月16号被Sun公司收购。2009年,SUN又被Oracle收购。MySQL是目前IT行业最流行的开放源代码的数据库管理系统,同时它也是一个支......
  • macOS系统mamp搭建php连接sqlServer扩展,php连接sqlserver数据库
    macOS系统mamp搭建php连接sqlServer扩展,php连接sqlserver数据库下载:github上提供已经打包的os拓展文件https://github.com/Microsoft/msphpsql/releases打开php......
  • MySQL介绍
    MySQL数据库最初是由瑞典MySQLAB公司开发,2008年1月16号被Sun公司收购。2009年,SUN又被Oracle收购。MySQL是目前IT行业最流行的开放源代码的数据库管理系统,同时它也是一个支......
  • 6-1 使用函数输出指定范围内Fibonacci数的个数
    本题要求实现一个计算Fibonacci数的简单函数,并利用其实现另一个函数,输出两正整数m和n(0<m<n≤100000)之间的所有Fibonacci数的数目。所谓Fibonacci数列就是满足任一项数字是......
  • 使用SQL语句实现最短路线问题
    今天学习了一种直接用sql语句实现查询最短路径的方法,为我们的系统开发提供了便利。Stringsql="WITHRECURSIVEtransfer(start_station,stop_station,stops,path)......