mysql anyvalue和min_关于SQL中的ANY和MIN

ANY应该等价于MIN(),为什么查询结果不一样呢?出错在哪?请高手指教!多谢~~题目:查找课程号206的成绩不低于课程号101的最低成绩的学生的学号Sno为学号,SC为学生选课成绩表,Grade为...

ANY应该等价于MIN(),为什么查询结果不一样呢?出错在哪?请高手指教!多谢~~

题目:查找课程号206的成绩不低于课程号101的最低成绩的学生的学号

Sno为学号,SC为学生选课成绩表,Grade为选课成绩,Cno为课程号

查询一:

SELECT Sno

FROM SC

WHERE Sno='206' AND Grade>ANY

(

SELECT Grade

FROM SC

WHERE Cno='101'

)

结果:空值

查询二:

SELECT Sno

FROM SC

WHERE Cno='206'AND Grade>

(

SELECT MIN(Grade)

FROM SC

WHERE Cno='101'

)

结果:有几个值

正确答案应该是二,但是书上给的查询一为何得不到正确值呢?

SC:

Sno Cno Grade

081101 101 80

081101 102 78

081101 206 76

081102 102 78

081102 206 78

081103 101 62

081103 102 70

081103 206 81

081104 101 90

081104 102 84

081104 206 65

081106 101 65

081106 102 71

081106 206 80

081107 101 78

081107 102 80

081107 206 68

081108 101 85

081108 102 64

081108 206 87

081109 101 66

081109 102 83

081109 206 70

081110 101 95

081110 102 90

081110 206 89

081111 101 91

081111 102 70

081111 206 76

081113 101 63

081113 102 79

081113 206 60

081201 101 80

081202 101 65

081203 101 87

081204 101 91

081210 101 76

081216 101 81

081218 101 70

081220 101 82

081221 101 76

081241 101 90

展开

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值