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

połącz dwie identyczne struktury tabel z różnymi danymi

Do wykonania tego zapytania potrzebne są dwie sztuczki. Pierwszy to PEŁNE DOŁĄCZENIE. Pełne sprzężenie pozwoli Ci połączyć obie tabele i wstawić wartości null w dowolnej tabeli, jeśli nie spełnisz warunku sprzężenia. Drugi to COALESCE, który pozwoli Ci pobrać zakład i miejsce z dowolnej tabeli, która zawiera rekord dla tego wiersza w wynikach.

SELECT Coalesce(t1.Site,t2.Site) As Site, COALESCE(t1.Plant, t2.Plant) As Plant,
    t1.Value_1 As t1_Value_1, t1.Value_2 As t1_Value_2,
    t2.Value_1 As t2_Value_1, t2.Value_2 As t2_Value_2
FROM Table1 t1
FULL JOIN Table2 t2 ON t1.Site = t2.Site AND t1.Plant = t2.Plant


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL Wiele instrukcji LIKE

  2. Synchronizowanie baz danych SQL Server 2008 przez HTTP przy użyciu WCF i Sync Framework

  3. Debugowanie nie pokazuje aktualnej wersji procedury składowanej

  4. pojedyncze zapytanie do usunięcia z wielu tabel na serwerze sql

  5. Jaki byłby niezawodny sposób na uzyskanie wartości ułamkowej z liczby?