简体   繁体   English

在SQL Server中联接2个表

[英]Join 2 tables in SQL Server

I have 2 tables as following: 我有2张桌子,如下所示:

Table_1 表格1

    CODE1    CODE2     CODE3    SYNC
    -----------------------------------
    02       03         04         YES
    01       03         NULL         NO
    01       02         03         NA

Table_2 表_2

    CODE     NAME
    --------------
    01       ABC
    02       BCD
    03       DEF
    04       EFG

How to create the query as the following result: 如何将查询创建为以下结果:

    CODE1     CODE2       CODE3      SYNC
    --------------------------------------
    BCD       DEF         EFG         YES
    ABC       DEF         NULL        NO
    ABC       BCD         DEF         NA

This is what you need to do 这就是你要做的

SELECT T2.CODE AS [CODE1],T3.CODE AS [CODE2],T4.CODE AS [CODE3],T.SYNC
FROM Table_1 T
LEFT JOIN Table_2 T2 ON T2.CODE = T.CODE1
LEFT JOIN Table_2 T3 ON T3.CODE = T.CODE2
LEFT JOIN Table_2 T4 ON T4.CODE = T.CODE3

Try using left join : 尝试使用left join

SELECT
    tblCODE1.NAME AS CODE1,
    tblCODE2.NAME AS CODE2,
    tblCODE3.NAME AS CODE3,
    Table_1.SYNC
FROM
    Table_1
    LEFT JOIN Table_2 as tblCODE1
        ON tblCODE1.CODE=Table_1.CODE1
    LEFT JOIN Table_2 as tblCODE2
        ON tblCODE2.CODE=Table_1.CODE2
    LEFT JOIN Table_2 as tblCODE3
        ON tblCODE3.CODE=Table_1.CODE3

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

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