#聚合函数数
#获取学生总数
SELECT COUNT(*) FROM student;
#获取成绩平均分
SELECT AVG(studentresult) FROM result
#获取指定科目的平均分
WHERE subjectNo = 3;
#求指定科目的 最大值,最小值
SELECT MAX(studentresult)AS'最高分',MIN(studentresult)AS'最低分'
FROM result WHERE subjectNo = 1;
#求指定科目成绩的总和 可以与最大值最小值并列使用
SELECT SUM(studentresult)AS'成绩总和',MAX(studentresult)AS'最高分',MIN(studentresult)AS'最低分'
FROM result WHERE subjectNo = 1;
#分组,查询男女生的总数
#注意:分组之后查询列不可以用未被分组的列(无意义)
SELECT COUNT(*),sex AS '性别' FROM student
GROUP BY sex;
#上个案例,分完组之后,获取男生的数量
SELECT COUNT(*),sex AS '性别' FROM student
GROUP BY sex
HAVING sex = '男';
#分完组后,获取数量小于10的那一组信息
SELECT COUNT(*) ,sex AS '性别' FROM student
GROUP BY sex
HAVING COUNT(*)<10;
#函数
#ceil():向上取整
SELECT CEIL(2.3);
#floor():向下取整
SELECT FLOOR(2.8);
#rand():返回0~1之间的随机数
SELECT RAND();
#curdate():获取当前日期
SELECT CURDATE();
#curtime():获取当前时间
SELECT CURTIME();
#now():获取当前时间和日期
SELECT NOW();
#week(date):返回日期date为一年中的第几周
SELECT WEEK(NOW());
#year(date):返回日期date的年份
SELECT YEAR(NOW());
#hour(time):返回时间time的小时值
SELECT HOUR(NOW());
#minute(time):返回时间time的分钟值
SELECT MINUTE(NOW());
#datediff(date1,date2):返回日期参数date2到date1之间相隔的天数
SELECT DATEDIFF(NOW(),'2000-5-25');
#adddate(date,n):计算日期参数date+n天后的日期
SELECT ADDDATE(NOW(),900);
#concat(str1,str1..strn):字符串连接
SELECT CONCAT('my','S','QL');
#insert(str,pos,len,newstr):字符串替换
SELECT INSERT('这是SQL Server数据库',3,10,'MySQL');
#lower(str):将字符串转换为小写
SELECT LOWER('MYSQL');
#upper(str):将字符串转换为大写
SELECT UPPER('mysql');
#substring(str,num,len):字符串截取
SELECT SUBSTRING('JavaMySQLOracle',5,5);
#查询mysql用户信息
SELECT * FROM mysql.`user`;
#weekday(curdate())函数返回一个日期的工作日索引值,即星期一为0,星期二为1,星期日为6。
SELECT WEEKDAY(CURDATE())-6 DAY
#date_sub(d(起始日期),interval(间隔) expr(使用表达式显示需要减去的时间段))函数返回起始日期d减去一个时间段后的日期。
SELECT DATE_SUB(CURDATE(),INTERVAL WEEKDAY(CURDATE()) -6 DAY) ;
#查询出当前周的所有日期
SELECT DATE_SUB(CURDATE(),INTERVAL WEEKDAY(CURDATE()) + 0 DAY) AS WEEKDAY
UNION
SELECT DATE_SUB(CURDATE(),INTERVAL WEEKDAY(CURDATE()) - 1 DAY)
UNION
SELECT DATE_SUB(CURDATE(),INTERVAL WEEKDAY(CURDATE()) - 2 DAY)
UNION
SELECT DATE_SUB(CURDATE(),INTERVAL WEEKDAY(CURDATE()) - 3 DAY)
UNION
SELECT DATE_SUB(CURDATE(),INTERVAL WEEKDAY(CURDATE()) - 4 DAY)
UNION
SELECT DATE_SUB(CURDATE(),INTERVAL WEEKDAY(CURDATE()) - 5 DAY)
UNION
SELECT DATE_SUB(CURDATE(),INTERVAL WEEKDAY(CURDATE()) - 6 DAY)
最后
以上就是开朗大米最近收集整理的关于MySQL聚合函数的全部内容,更多相关MySQL聚合函数内容请搜索靠谱客的其他文章。
发表评论 取消回复