为了账号安全,请及时绑定邮箱和手机立即绑定

关于修改表中数据后查询出不符合预期结果的尝试

老师,问您个问题: 

在执行“select * from user_kills;”得到的表中全部数据那一块,当把id为8的那条数据的user_id改为2时,即猪八戒有在两个不同的日期杀敌都有10个的记录,那么通过您那条语句查询出来的结果就不是6条数据(每个徒弟都有两条记录),而是猪八戒只有一条记录,而其余正常,请问这个作何解释呢?

 这个也是我偶然发现的,因为网站上没有贴出表中用例数据,所以先期是自己胡乱建的数据,视频到后期才通过你的查询看到完整的数据。

正在回答

4 回答

放到代码里面去筛选呗

0 回复 有任何疑惑可以回复我~

恩,我的也是同样情况。有没有最佳的方法去解决?

0 回复 有任何疑惑可以回复我~

点赞,确实是,偶然发现,那就是问题了,确实是没有考虑完全。(select count(*) from user_kill b where b.user_id = a.user_id and a.kills <= b.kills ) cnt,这个语句是达不到排序目的的,正如你说,猪八戒有12、10、10 这种记录时,针对12,排出结果是1,最对第一个、第二个10,排出的结果都是3,后面条件 where cnt <= 2 直接把两条10的记录过滤掉了。

2 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

关于修改表中数据后查询出不符合预期结果的尝试

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信