SQL 基本查询语句操作
来源:互联网 发布:淘宝号刷了单违法的吗 编辑:程序博客网 时间:2024/04/29 10:49
最近笔试题目,总是碰到一些SQL语句的基本操作,现简单总结下。
题目:表名为t,name字段代表姓名,score字段代表分数,请根据要求写出SQL语句。
建表:
我使用的是navicat for MySQL 11.1.11.
代码:
5个问题代码写在一起了。第一行是先看看所有信息。
图片展示:
链式写法:
SELECT * FROM t;SELECT name,SUM(score) FROM t GROUP BY name ORDER BY SUM(score) DESC LIMIT 1,4;SELECT name,SUM(score) FROM t GROUP BY name HAVING SUM(score) < 150;SELECT name,AVG(score) FROM t GROUP BY name HAVING AVG(score)>60 AND AVG(score)<90; SELECT name,SUM(score),AVG(score) FROM t GROUP BY name HAVING AVG(score)<90 AND SUM(score)>150;SELECT COUNT(*) n FROM (SELECT name,SUM(score),AVG(score) FROM t GROUP BY name HAVING AVG(score)<90 AND SUM(score)>150) n;
优化写法:
代码1:
SELECT*FROMt;
代码2:
SELECTNAME,SUM(score)FROMtGROUP BYNAMEORDER BYSUM(score) DESCLIMIT 1, 4;
代码3:
SELECTNAME,SUM(score)FROMtGROUP BYNAMEHAVINGSUM(score) < 150;
代码4:
SELECTNAME,AVG(score)FROMtGROUP BYNAMEHAVINGAVG(score) > 60AND AVG(score) < 90;
代码5:
SELECTNAME,SUM(score),AVG(score)FROMtGROUP BYNAMEHAVINGAVG(score) < 90AND SUM(score) > 150;
代码6:
SELECTCOUNT(*) nFROM(SELECTNAME,SUM(score),AVG(score)FROMtGROUP BYNAMEHAVINGAVG(score) < 90AND SUM(score) > 150) n;
结果:
结果1:
结果2:
结果3:
结果4:
结果5:
结果6:
!!!注意:
1.having不能和order by 一起用。
2.
SELECTCOUNT(*) nFROM(SELECTNAME,SUM(score),AVG(score)FROMtGROUP BYNAMEHAVINGAVG(score) < 90AND SUM(score) > 150) n;
在上面的这个查询里,()部分外必须定义表别名m ,不然就报错,[Err] 1248 - Every derived table must have its own alias。
总结:
直接上书本上的公式,有权威性。
完毕。
1 0
- SQL 基本查询语句操作
- SQL基本查询语句
- SQL基本查询语句
- SQL 基本查询语句
- sql语句基本操作
- SQL基本操作语句
- SQL基本语句操作
- sql语句基本操作
- sql基本操作语句
- sql语句基本操作
- SQL基本操作语句
- SQL基本操作语句
- SQL基本操作语句
- Oracle---基本sql语句查询
- sql基本查询语句练习
- sql中的基本查询语句
- sql语句的查询语句基本大全
- SQL的查询操作语句
- 一看就会Android之分组列表组件ExpandableListView的使用
- markdown流程图练习:最小路径搜索血管函数流程图
- Linux系统signal()函数
- Opencv 模块计算机类型“x64”与目标计算机类型“X86”冲突
- Tomcat启动时报内存溢出无法正常启动
- SQL 基本查询语句操作
- 文字属性--Attributes
- 关于百度优化中减少访问数据库的处理
- 一看就会Android之网格视图GridView的使用及监听
- C++ 求任意两个矩阵的乘积
- Java-HttpServlet
- python 自动登录网站
- 获取鼠标相对某个div的偏移量
- 冗余字段