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

Jak zbudować instrukcję SQL z wykorzystaniem identyfikatorów, które mogą nie być dostępne w tabeli?

OUTER JOIN tutaj nie zadziała, ponieważ nie chcesz mieć wszystkich elementów z tabeli 2, ale tylko te, w których odpowiedni element istnieje w tabeli 1.

Chciałbyś zrobić coś takiego:

SELECT tbl1.province, tbl1.district, tbl1.commune, tbl1.village 
FROM dbo.table2 AS tbl2 
INNER JOIN dbo.table1 AS tbl1
ON tbl1.province = tbl2.province_id 
AND tbl1.district = tbl2.district_id 
AND (tbl1.commune is NULL OR (tbl1.commune = tbl2.commune_id)) 
AND (tbl1.village is NULL OR (tbl1.village = tbl2.village_id))



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Skopiuj dane do i z tej samej tabeli i zmień wartość skopiowanych danych w jednej kolumnie na określoną wartość

  2. Jak zaktualizować bazę danych SQL Server 2008 podczas wstawiania nowych kolumn do tabeli danych w VB 2010?

  3. UNION wyniki wielu procedur składowanych

  4. Implementacja wyszukiwania pełnotekstowego w SQL Server 2016 dla początkujących

  5. Uprawnienia SQL Server w przechowywanych procesach z dynamicznym SQL