首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Datamart .表格类型

Datamart .表格类型
EN

Stack Overflow用户
提问于 2017-09-25 10:08:48
回答 1查看 153关注 0票数 1

我正在和DatMart一起工作,没有任何工具,我有表格列出了学生的详细信息。

代码语言:javascript
复制
SystudentID Campus   FirstNAme  LastName
   8          AICASA    Ali       Mehdi
   9          AICASA    Ashka      Patel
  10          AICASA    Jane       Iwuchukwu-Brooks
  11          AICASA    Helen      Oredeko

学生可以按以下方式注册多个程序(它不是固定的)

代码语言:javascript
复制
AdEnrollID  SyStudentId Program Term
2671    9   AICASA  Fall - 2009 AICASA                 
2537    11  AICASA  Spring - 2009 AICASA               
2634    8   AICASA  Fall - 2010 AICASA                 
1853    10  AICASA  Fall - 2008 AICASA

现在,我将这两个表组合在一起,我想要制作一个表REP_student,其中包含我想要的所有细节。但它不应该给我两排。(请参阅表结构) SQL中是否有表类型。实现这一目标的最佳途径是什么?

代码语言:javascript
复制
SystudentID Campus  FirstNAme   LastName AdEnrollID SyStudentId Program Term

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-09-25 11:33:11

为此,可以使用。在这里,我假设您只想显示表1在表2中有相关记录的记录,因此使用INNER JOIN.If,您需要一个不同的结果,您可以根据需要尝试LEFT JOIN ,RIGHT JOIN OR FULL OUTER JOIN

代码语言:javascript
复制
SELECT S.SystudentID ,S.Campus,S.FirstNAme,S.LastName,C.AdEnrollID,C.SyStudentId,C.Program,C.Term 
FROM table1_name S
INNER JOIN table2_name C
ON S.SystudentID  = C.SystudentID;  

如果您想要一个全新的表,我建议单独创建一个新表,并在INSERT查询中使用它插入两个表的现有值。

代码语言:javascript
复制
INSERT INTO new_table_name(SystudentID,Campus,FirstNAme,LastName,AdEnrollID,New_SyStudentId,Program,Term)
SELECT S.SystudentID ,S.Campus,S.FirstNAme,S.LastName,C.AdEnrollID,C.SyStudentId,C.Program,C.Term 
FROM table1_name S
INNER JOIN table2_name C
ON S.SystudentID  = C.SystudentID; 

您还可能需要考虑从新表和查询中删除一个SyStudentId,因为它很可能是一个重复的value.Here,我只是将它包括在内,因为您已经在输出表中提到需要它。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46402617

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档