SQL 关于空值 跟NULL 的区别

这三张表是都常见的S,C,SC表。现在有一道题是说:1)检索学C2课的学生姓名与年龄。我写的代码是:selects#,snamefromswheres#in(Select... 这三张表是都常见的S,C,SC表。
现在有一道题是 说:
1)检索学C2课的学生姓名与年龄。
我写的代码是:
select s#,sname from s
where s# in(Select S# from sc
Where c#='C2' and grade is not null);但是查出来的 只有三个 S3 S5 S1 但是那个S4 虽然没有成绩,但是算是已经选了课了吧,只是没有成绩而已。
这个怎么弄 空值跟 NULL 怎么弄?
展开
 我来答
17号观察室
推荐于2016-08-27 · TA获得超过5730个赞
知道大有可为答主
回答量:3666
采纳率:66%
帮助的人:1365万
展开全部
你这个查询有问题是因为 你那个子查询里面有空值 因为空值是不参与运算比较的 所以排除不掉的,因为你是比较S# 所以条件里把S# 处理好 结果就是你想要的数据
select s#,sname from s
where s# in
(
Select S# from sc
Where c#='C2' and S# is not null and S# <>''
) ;
先口后财
推荐于2018-04-20
知道答主
回答量:4
采纳率:0%
帮助的人:5894
展开全部
select s#,sname from s

where s# in
(
Select S# from sc

Where c#='C2' and isnull(grade,'') <> ''
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
光舟湖畔
2013-05-21 · TA获得超过2694个赞
知道小有建树答主
回答量:1643
采纳率:0%
帮助的人:1229万
展开全部
isnull(grade,'')<>''
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式