-
使用SQL技巧的作用查看全部
-
SQL语句类型查看全部
-
查询每个人打怪最多的日期: select a.user_name,b.timestr,b.kills from user1 a join user_kills b on a.id=b.user_id where b.kills=(select max(c.kills) from user_kills c where c.user_id=b.user_id);查看全部
-
低效的子查询 select a.user_name,a.over,(select over from user2 b where a.user_name=b.user_name) as over2 from user1 a; 使用join优化后的子查询: select a.user_name,a.over,b.over as over2 from user1 a left join user2 b on a.user_name=b.user_name;查看全部
-
join类型查看全部
-
常见SQL语句类型查看全部
-
分类聚合查询优化SQL:select d.user_name,c.timestr,kills from (select user_id,timestr,kills,(select count(*) from user_kills b where a.user_id=b.user_id and a.kills<=b.kills ) as cnt from user_kills a group by user_id,timestr,kills) c JOIN user1 d on c.user_id=d.id where c.cnt<=2查看全部
-
优化sql:select a.user_name,b.timestr,b.kills from user1 a join user_kills b on a.id=b.user_id join user_kills c on b.user_id=c.user_id group by a.user_name,b.timestr,b.kills HAVING b.kills=MAX(c.kills);查看全部
-
ddl 数据定义语言 dml 数据操作语言【select insert delete update】查看全部
-
更新使用过滤条件中包括自身的表。查看全部
-
解决mysql不支持full join问题。查看全部
-
全连接查看全部
-
左外连接查看全部
-
要得到各人打怪最多的记录。 方法一: select a.user_name,b.timestr,b.kills from user1 a JOIN user_kill b ON a.i d=b.user_id WHERE b.kills=(select max(kills) from user_kill c where c.user_id=a. id); 子查询效率低。 方法二: select a.user_name,b.timestr,max(b.kills) from user1 a JOIN user_kill b O N a.id=b.user_id group by a.user_name; 方法三: select a.user_name,b.timestr,b.kills from user1 a JOIN user_kill b ON a.i d=b.user_id JOIN user_kill c ON c.user_id=b.user_id GROUP BY a.user_name,b.timestr,b. kills HAVING b.kills=MAX(c.kills);查看全部
-
join操作类型-Inner join查看全部
举报
0/150
提交
取消