2011-04-20 95 views
0

我正在開發一個t-sql查詢返回兩個表的左連接,但是當我從表A中選擇記錄時,它只給出了2條記錄。但問題是當我離開表B時,它給了我4條記錄。我怎樣才能減少到只有2記錄?SQL查詢檢索DISTINCT行左加入

雖然一個問題是我只知道一個PK/FK鏈接這兩個表。

+2

如果在PK-FK關係船上有兩個匹配的記錄,那麼你顯然會在父表中得到兩行的一行。你可以發佈兩個表的DDL和你正在選擇的列嗎? – Chandu 2011-04-20 15:46:09

回答

2

您用於連接的字段在表B中必須存在多次 - 這就是連接中返回多行的原因。爲了減少行數,您必須向連接添加更多字段,或者添加where子句來過濾不需要的行。

或者,您可以使用GROUP BY語句對行進行分組,但這可能不是您需要的。

0

請記住,左連接爲您帶來了來自連接表的空字段。 你也可以使用select(distinct),但是我看不出你的問題。你能給我們更多的細節嗎?