Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

połącz dwie tabele o różnej liczbie wierszy (w serwerze sql)

Musisz użyć FULL OUTER JOIN

Select a.Col1,
       a.Col2,
       a.Col3,
       a.Col4,
       b.Col3,
       b.Col4

From TableA a
Full Outer Join TableB b on a.Col1 = b.Col1
                         And a.Col2 = b.Col2

EDYTUJ:

„nie działa” nikomu nie pomoże. Może mógłbyś podać więcej szczegółów, dlaczego to nie działa dla Ciebie.

Możesz dodać przykładowe dane i rzeczywiste oczekiwane wyniki do swojego pytania.

np.

Create Table #TableA
(
Col1 
...
)

Insert Into #TableA
Values (...)

Im jaśniejsze pytanie, tym lepsze będą odpowiedzi. Jeśli ludzie nie w pełni rozumieją, na czym dokładnie polega Twój problem i jakich wyników oczekujesz, to w jaki sposób mamy zapewnić Ci pełną i poprawną odpowiedź.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. alternatywy dla REPLACE w typie danych text lub ntext

  2. Jak zastosować 3 wartości dla 1 wiersza do 3 wierszy z każdą wartością?

  3. Trigram Wildcard – wyszukiwanie ciągów znaków w SQL Server

  4. SqlException (0x80131904):nieprawidłowa nazwa obiektu „dbo.Categories”

  5. Kolumna tożsamości SQL Server 2000/2005 + replikacja