1.重复数据的处理
1.利用Group By 和 having从句处理
SELECT `name`,COUNT(*) FROM `user1` GROUP BY `name` HAVING COUNT(*) > 1;
2.删除重复数据,对于相同数据保留ID最大的
DELETE a FROM user1 a JOIN(SELECT `name`,COUNT(*),MAX(id) AS id FROM user1 GROUP BY `name` HAVING COUNT(*)>1) b ON a.`name` = b.`name` WHERE a.id < b.id;
2.常见子查询的使用场景
1.使用子查询可以避免由于子查询中的数据产生的重复
使用连接查询
使用连接查询有重复,所以一定要去重
使用子查询可以避免由于子查询中的数据产生的重复
2.查询中实现多列过滤
查询出每一个取经人打怪最多的日期,并列出取经人的姓名,打怪最
多的日期和打怪的数量
1.使用连接的方式
2.使用mysql特有的多列过滤
3.解决同一属性的多值过滤
添加一个技能表
查询出同时具有变化和念经两项技能的取经人