Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

съединете две таблици с различен брой редове (в sql сървър)

Трябва да използвате 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

РЕДАКТИРАНЕ:

"не работи" няма да помогне на никого. Може би бихте могли да предоставите допълнителни подробности защо не работи за вас.

Можете да добавите някои примерни данни и действителния очакван резултат към вашия въпрос.

напр.

Create Table #TableA
(
Col1 
...
)

Insert Into #TableA
Values (...)

Колкото по-ясен е въпросът ви, толкова по-добри ще бъдат отговорите. Ако хората не разбират напълно какъв точно е вашият проблем и очаквания резултат, който искате, тогава как би трябвало да ви предоставим пълен и правилен отговор.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Трябва да декларира грешката на променливата @myvariable с ADO параметризирана заявка

  2. Поправка:„BACKUP LOG не може да се извърши, защото няма текущо архивиране на базата данни.“ в SQL Server/SQL Edge

  3. Какви са правилата за използване на вътрешни параметри в SSRS

  4. PI() Примери в SQL Server

  5. SQL Server 2005 Каскадно изтриване