繁体   English   中英

两个表的数据连接 MS Access SQL

[英]Data Joining of two Tables MS Access SQL

我有两个名为 - 1) Students 2) Classes的表。 ClassID是 Classes 表的主键和 Students 表的外键。

我想访问具有特定RollNo的 Student 表中的一行(此 RollNo 由用户输入给出)和 Classes 表中的所有行。

学生表如下: -

RollNo   |   SName   |    DOB     |   ClassID   |   Picture
--------------------------------------------------------------
101      | AAAA      | 22/09/2012 | 1           | attachment
102      | BBBB      | 22/09/2010 | 2           | attachment
103      | CCCC      | 22/09/2011 | 1           | attachment
104      | DDDD      | 22/09/2010 | 4           | attachment

RollNo 是主键。 学生的最后一个领域是图片附件。

类表如下: -

ClassID   |   Class
--------------------
1         | One     
2         | Two      
3         | Three    
4         | Four    

我想要这样的 output

Output

RollNo   |   SName   |    DOB     |   Class   |   Picture
--------------------------------------------------------------
         |           |            | One       | 
102      | BBBB      | 22/09/2010 | Two       | attachment
         |           |            | Three     | 
         |           |            | Four      |

获取这样的数据的查询是什么?

您需要将 Classes to Students 左连接:

select s.RollNo, s.SName, s.DOB, c.Class, s.Picture
from classes as c left join (select * from students where rollno = 102) as s
on s.classid = c.classid

看这里并尝试一下:

select s.RollNo,s.SName,s.DOB,c.Class,s.Picture
from Students s
Left join Classes c on c.ClassID   = s.ClassID
where s.RollNo=101;

这正是您想要的:

在此处输入图像描述

我认为下面的 SQL 就是你所追求的:

SELECT s.RollNo, S.SName, S.DOB, C.Class, S.Picture
FROM Students S, Classes C
WHERE S.RollNo=[Enter roll no];

这使:

在此处输入图像描述

问候,

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM