请教各位大神一个sql面试题,关于where子查询的,我看不懂啊,求教!!

[复制链接]
查看11 | 回复3 | 2021-1-27 06:27:38 | 显示全部楼层 |阅读模式
http://blog.csdn.net/anxpp/article/details/51893792面试题在这个里面,我随便翻的时候看到的,里面的select语句是这样的
select*fromgradeg
where(
selectcount(*)fromgradewhereg.course=courseandg.grade -->
回复

使用道具 举报

千问 | 2021-1-27 06:27:38 | 显示全部楼层
这个SQL是有问题的,取每个科目成绩前三,最好有分析函数。
回复

使用道具 举报

千问 | 2021-1-27 06:27:38 | 显示全部楼层
以当前行为基准,查找一下比自己大的记录数,有一个人比你大,你就是第二名,两个人比你大,你就是第三名。
回复

使用道具 举报

千问 | 2021-1-27 06:27:38 | 显示全部楼层
引用2楼wmxcn2000的回复:以当前行为基准,查找一下比自己大的记录数,有一个人比你大,你就是第二名,两个人比你大,你就是第三名。
SQL没有考虑两个或两个以上并列第一,也没有考虑两个或两个以上并列第二的情况。
所以说SQL是有问题的。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行