2012-04-24 22 views
1

次のクエリを使用して2つのテーブルを結合しました。それは、Table02に重複があるので私に重複を与えている。私は愚か者を防ぐ必要があります。tsqlの詐欺を防ぐ方法は?

注:

  1. 私は私の選択なステートメント内の列の順序/シーケンスを変更することはできません。
  2. t1.NumberIDでdistinctを使用することはできません。

    SELECT t1.NumberID、t1.Copies、t1.NameStreet T1、t1.NumberIDによってt2.Name = LEFT(t1.NameStreet、レン(t2.Name))オーダーTable02のT2 をJOIN TABLE01 T1から.Namestreet

TABLE01

ID NumberID Copies  NameStreet 
1 11111111 2   Julian Assange 100 Majestic street, Toronto 
2 22222222 1   Brad Pit 200 Loaden Blvd, Toronto 
3 11111111 0   Allen Sunderland 9, Unit 2, Janet Street, BC 

Table02

ID Name 
1 Julian Assange 
2 Allen Sunderland 
3 Julian Assange 

結果: -

1 11111111 2   Julian Assange 100 Majestic street, Toronto 
3 11111111 0   Allen Sunderland 9, Unit 2, Janet Street, BC 
1 11111111 2   Julian Assange 100 Majestic street, Toronto 

期待される結果: -

1 11111111 2   Julian Assange 100 Majestic street, Toronto 
3 11111111 0   Allen Sunderland 9, Unit 2, Janet Street, BC 
+0

変更 'SELECT'をSELECT DISTINCT''へ。 – onedaywhen

答えて

2

クエリの最後にこれを追加します。

GROUP BY t1.NumberID, t1.Copies, t1.NameStreet 
+0

申し訳ありません。 select文の最後にorder by節があります。私はそれを質問に加えました。 – user1327064

+1

これでorder by節の前にこれを追加します... – therealmitchconnors

関連する問題