sql 2个表查询(可能有空值),结果要全部显示

。。。。。前面打错需求了假设有学生表a成绩bidnameroomidroom(a表的外键)val1ax231x23802bs212s21903cb113<NULL>70希... 。。。。。前面打错需求了
假设有
学生表a 成绩b
id name room id room(a表的外键) val
1 a x23 1 x23 80
2 b s21 2 s21 90
3 c b11 3 <NULL> 70

希望得到
id name Student ID val
1 a x23 80
2 b s21 90
3 c <NULL> 70

求问这么输出
。。。又失误下
a表 c 的 room 为《null》
得到数据 Student ID为 room id也可以不显示,2个表的id是各个表的主键,并不是一样的
展开
 我来答
twvampire
2015-11-09 · TA获得超过3620个赞
知道大有可为答主
回答量:3029
采纳率:76%
帮助的人:2980万
展开全部
你这种2个表没有关联的,显示不出来的val的
如果用room关联,,
最后的结果
val 也会是null
除非你用case 语句 默认他是空的时候显示为70的
更多追问追答
追问
是之前关联过的。room ,比如c 是之前住宿的,之后走读了。寝室不住了。现在输出之前的那个,可以不?
追答
,,不行的,你这种纸能
select a.id,a.name,b.stustuid,case when isnull(b.val,'')='' then 70 else b.val end
from a left join b on a.room=b.room

没其他的方式的,因为你想如果b表room有多个空的,我关联哪个,,,
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式