代码之家  ›  专栏  ›  技术社区  ›  Sini Vasudevan

数据集市-表类型

  •  1
  • Sini Vasudevan  · 技术社区  · 8 年前

    我正在使用DatMart,没有任何工具。我有一张桌子,上面列出了学生的详细信息。

    SystudentID Campus   FirstNAme  LastName
       8          AICASA    Ali       Mehdi
       9          AICASA    Ashka      Patel
      10          AICASA    Jane       Iwuchukwu-Brooks
      11          AICASA    Helen      Oredeko
    

    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
    

    实现这一目标的最佳方式是什么?

    SystudentID Campus  FirstNAme   LastName AdEnrollID SyStudentId Program Term
    

    1 回复  |  直到 8 年前
        1
  •  2
  •   Supun Amarasinghe    8 年前

    INNER JOIN .如果你想要不同的结果,你可以试试 LEFT JOIN ,RIGHT JOIN OR FULL OUTER JOIN 根据您的需要。

    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 查询以插入两个表的现有值。

    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,因为它很可能是重复值。在这里,我只是将其包括在内,因为您已经在输出表中提到需要它。