sql >> Database teknologi >  >> RDS >> Sqlserver

SSIS - Udfør et opslag på en anden tabel for at få relateret kolonne

Faktisk er dette en sag for Lookup. Det ser ud til, at du vil lave et opslag efter navn og returnere id. Ret simpelt. Sådan oprettede jeg et eksempel på dette:

  1. Træk en dataflowopgave til designoverfladen. Dobbeltklik på det for at skifte til det.
  2. Opret en forbindelsesadministrator til min database
  3. Træk ind på designoverfladen:
    • en OLE DB-kilde
    • En opslagstransformation
    • En OLE DB-destination
  4. Forbind kilden med opslag til destinationen. Det er "Lookup Match Output", vi vil have til destinationen. Se figur 1.
  5. Konfigurer kilden. Min kildetabel havde lige id- og navnekolonner.
  6. Konfigurer opslag
    • Fanen Generelt:Brug en OLE DB-forbindelse
    • Fanen Forbindelse:Angiv den samme forbindelse, men brug opslagstabellen. Min opslagstabel var kun id og navn, men navnet blev gjort unikt, så det giver bedre mening som opslagskolonne.
    • På kolonnefanen skal du konfigurere navn til at knytte til navn med "id" som output. Konfigurer opslagsoperationen til at være "add new column", og navngiv den kolonne "lookupId". Se figur 2.
    • Ignorer de to andre faner
  7. Konfigurer output til at tage alle tre kolonner. Se figur 3.

Det er alt. For hver række fra kilden vil navnekolonnen blive brugt til at matche navnekolonnen i opslagstabellen. Hvert match vil bidrage med sin id-kolonne som den nye lookupId-kolonne. Alle tre kolonner fortsætter til destinationen.

Figur 1:
Figur 2:
/6Q0ng>

Figur 3:
-


  1. Opdater dynamisk php div ved hjælp af jquery

  2. Oracle:Parameteriseret forespørgsel med IN-sætning returnerer nullværdi

  3. Hvordan forespørger man indlejrede arrays i en postgres json-kolonne?

  4. MySQL vs. SQL Server vs. Oracle