小编Vis*_*alJ的帖子

为什么在LEFT JOIN之后我的行数增加了

我试图加入各种数据集来获得一个主表,虽然我设法保留3个左连接后的行数,但在下一步之后,它似乎增加了它.有什么想法吗?

查询3个连接

-------------------------------------------------------------------
--- STEP 4:    ----------------
-------------------------------------------------------------------
SELECT
DISTINCT        Table1.[Field1]
        ,   Table1.[Field2]
        ,   Table3.[Field3]
        ,   Table1.[Field4]
        ,   Table1.[Field5]
        ,   Table1.[Field6]
        ,   Table1.[Field7]
        ,   Table1.[Field8]
        ,   Table1.[Field9]
        ,   Table1.[Field10]
FROM        db1.dbo.raw_tbl_1 AS Table1
LEFT JOIN   db2.dbo.tbl_2 Table2
ON          Table1.Field7 = Table2.[Field13]
    LEFT JOIN   db2.dbo.tbl_3 Table3
    ON          CONVERT(INT,Table1.[Field2]) = Table3.Field14
        LEFT JOIN   db2.dbo.tbl_4Table4
        ON          Table2.Field17= Table4. Field15
WHERE       Table2. Field17 IS NOT NULL
-- 2682270 rows (Desired row count)
Run Code Online (Sandbox Code Playgroud)

查询4个连接(增加行数)

-------------------------------------------------------------------
--- STEP 5:    ----
-------------------------------------------------------------------
SELECT
DISTINCT        Table1.[Field1]
        ,   Table1.[Field2] …
Run Code Online (Sandbox Code Playgroud)

sql sql-server join

5
推荐指数
1
解决办法
9394
查看次数

标签 统计

join ×1

sql ×1

sql-server ×1