sql >> Databáze >  >> RDS >> Sqlserver

SSIS – Provedení vyhledávání v jiné tabulce za účelem získání souvisejícího sloupce

Ve skutečnosti je to případ společnosti Lookup. Zdá se, že chcete provést vyhledávání podle jména a vrátit ID. Docela jednoduché. Zde je návod, jak jsem vytvořil příklad:

  1. Přetáhněte úlohu toku dat na plochu návrhu. Dvojitým kliknutím na něj přepnete.
  2. Vytvořit Správce připojení pro moji databázi
  3. Přetáhněte na plochu návrhu:
    • zdroj OLE DB
    • Transformace vyhledávání
    • Cíl OLE DB
  4. Připojte zdroj k vyhledávání k cíli. Je to "Lookup Match Output", který chceme dostat do cíle. Viz obrázek 1.
  5. Nakonfigurujte zdroj. Moje zdrojová tabulka měla pouze sloupce id a name.
  6. Nakonfigurujte vyhledávání
    • Karta Obecné:Použít připojení OLE DB
    • Karta Připojení:zadejte stejné připojení, ale použijte vyhledávací tabulku. Moje vyhledávací tabulka byla pouze id a název, ale název byl jedinečný, takže to dává lepší smysl jako vyhledávací sloupec.
    • Na kartě sloupce nakonfigurujte název tak, aby se mapoval na název, s „id“ jako výstup. Nakonfigurujte vyhledávací operaci na „přidat nový sloupec“ a pojmenujte tento sloupec „lookupId“. Viz obrázek 2.
    • Ignorujte další dvě karty
  7. Nakonfigurujte výstup tak, aby zahrnoval všechny tři sloupce. Viz obrázek 3.

To je vše. Pro každý řádek ze zdroje bude sloupec názvu použit tak, aby odpovídal sloupci názvu ve vyhledávací tabulce. Každá shoda přispěje svým sloupcem id jako nový sloupec lookupId. Všechny tři sloupce budou pokračovat do cíle.

Obrázek 1:
<700601w

Obrázek 2:
<60g>

Obrázek 3:
J_PqA>


  1. Při přihlášení skrýt přihlašovací odkaz

  2. Připojení k databázi Heroku Postgres pomocí Asp.Net

  3. Chyba MySQL 1215:Nelze přidat omezení cizího klíče

  4. převod hodnoty oddělené čárkou na více řádků