您的位置:首页 > 数据库 > MySQL

mysql 集合函数,分组查询

2017-09-22 13:16 351 查看
USE AAA;

USE EEE;

-- 跨库查询  查询另一个数据库中的表

SELECT * FROM aaa.TEACHER;

SELECT * FROM aaa.TEACHER WHERE TNAME LIKE '%张%';

-- 查询mysql数据库版本

SELECT VERSION();

-- 分页查询  LIMIT 4  代表从0开始往后查询4条数据

SELECT * FROM aaa.TEACHER WHERE TNAME LIKE '__' LIMIT 4;

-- 分页查询  LIMIT 1,4  代表从2开始往后查询4条数据

SELECT * FROM aaa.teacher where tname LIKE '张_' ORDER BY tid DESC LIMIT 1,4;

-- 查询出最高分数的人员信息 子查询

SELECT TAGE,TNAME,TSCORE FROM aaa.teacher where 

TSCORE IN(SELECT MAX(TSCORE) FROM AAA.TEACHER);

-- 查询出最低分和人名

SELECT MIN(TSCORE) 最低分 FROM aaa.teacher;

-- 最低分的人员信息

SELECT * FROM aaa.teacher where 

TSCORE IN(SELECT MIN(TSCORE) FROM AAA.TEACHER);

INSERT INTO aaa.teacher(TNAME) VALUES('润发');

-- 查询出缺考人数

SELECT COUNT(*)缺考人数 FROM aaa.teacher WHERE TSCORE IS NULL;

-- 参加考试总人数

SELECT COUNT(*)考试人数 FROM aaa.teacher;

-- 考试不及格人数

SELECT COUNT(*) 不及格人数 FROM aaa.teacher WHERE TSCORE <60;

-- 求出平均分  最高分  最低分

SELECT AVG(TSCORE) 平均分,MAX(TSCORE) 最高分,MIN(TSCORE) 最低分 FROM AAA.TEACHER;

-- 没有填写家庭地址的人数

SELECT COUNT(*)地址为空的人 FROM aaa.teacher WHERE TADDRESS IS NULL;

-- 求总分

SELECT SUM(TSCORE) FROM AAA.TEACHER;

-- 平均年龄

SELECT AVG(TSCORE) FROM AAA.TEACHER;

USE AAA;

SELECT * FROM TEACHER;

-- 统计沈阳地区的人数

SELECT COUNT(*) FROM TEACHER WHERE  TADDRESS  LIKE '%沈阳%';

-- 统计一共有多少个地区

SELECT COUNT(*) FROM teacher TADDRESS;

-- 统计各个地区的老师人数  抛出未知地区

SELECT TADDRESS 地区,COUNT(*)人数 

FROM TEACHER 

WHERE TADDRESS IS NOT NULL -- 查询条件

GROUP BY TADDRESS -- 分组字段 根据ID分组没有意义  因为ID是唯一的

HAVING COUNT(*)>2 -- 分组条件必须跟着分组group by    少于2个人的不显示

ORDER BY COUNT(*) ASC; -- 升序

-- 求出最高分在60分以上的 住址不是null

SELECT TADDRESS 地区,MAX(TSCORE) 最高分,MIN(TSCORE) 最低分,

COUNT(*) 人数,AVG(TSCORE) 平均分,SUM(TSCORE) 总分

FROM teacher 

WHERE TADDRESS IS NOT NULL 

GROUP BY TADDRESS 

HAVING MAX(TSCORE)>60

ORDER BY sum(TSCORE) DESC;

-- 并集 UNION

-- 求出鞍山地区的最高分和沈阳地区的最高分

SELECT * FROM teacher

WHERE TADDRESS = "辽宁省鞍山市" AND TSCORE IN(SELECT MAX(TSCORE) FROM teacher

WHERE TADDRESS='辽宁省鞍山市')

-- UNION 联合并集  两个集合结果必须一样

UNION

-- 求出沈阳地区的最高分

SELECT * FROM teacher

WHERE TADDRESS = "辽宁省沈阳市" AND TSCORE IN(SELECT MAX(TSCORE) FROM teacher

WHERE TADDRESS='辽宁省沈阳市')
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: