sql >> Databasteknik >  >> RDS >> Sqlserver

Slå samman två tabeller med två kolumner SQL Server 2008 R2

Du går tillbaka till tabellen igen, så det ser ut som om du FRÅN samma bord två gånger (en för den behandlande läkaren, en för den ingivande läkaren).

SELECT a.doc_name as attending_name, 
       b.somefield, 
       a2.doc_name as admitting_name

FROM doctors a, 
     someothertable b, 
     doctors a2

WHERE a.doc_id = b.attending_doc_id
  AND a2.doc_id = b.admitting_doc_id
  AND b.record_id = <whatever>

och din inre koppling för a riktar sig till den första läkaren, kopplingen för a2 riktar sig till den andra läkaren.

Ursäkta pseudokoden, men jag tror att du förstår idén. Du kommer att märka att a och a2 båda får fältet doc_name från läkartabellen, men de är kopplade till de olika ID:n utanför b-tabellen.




  1. Problem med Ruby on Rails med Rake

  2. Hur skapar jag tabeller som inte ägs av sys i Oracle?

  3. Ta bort med CTE långsammare än att använda temptabell i Postgres

  4. Oracle-databas - ORA-01460 - oimplementerad eller orimlig konvertering begärd