Udostępnij za pośrednictwem


Jak Sortowanie danych dla korespondencji seryjnej i przekształcenia sprzężenia korespondencji seryjnej

W Integration Services, wymagają scalania i Merge Join przekształcenia posortowane dane dla ich produkcji.Dane wejściowe musi być sortowana fizycznie i opcje sortowania musi być zestaw wyjść i kolumn wyjściowych źródło lub nadrzędny transformacja.Jeśli opcje sortowania wskazują, że dane są sortowane, ale dane nie jest faktycznie sortowana, wyniki korespondencji seryjnej lub seryjnej operacji łączyć są nieprzewidywalne.

Sortowanie danych

Można sortować dane przy użyciu jednej z następujących metod:

  • źródło należy użyć klauzula ORDER BY w instrukcja, która jest używana do ładowania danych.

  • Wstaw transformacja sortowanie przed przekształceniem korespondencji seryjnej lub Merge Join przepływ danych.

Jeśli dane są dane ciąg, zarówno korespondencji seryjnej i Merge Join przekształcenia oczekiwać wartości ciągów, które zostały posortowane za pomocą sortowanie systemu Windows.Aby zapewnić wartości ciąg do scalania i Merge Join przekształcenia, które są sortowane za pomocą sortowanie systemu Windows, procedura.

Aby zapewnić ciąg wartości, które są sortowane za pomocą sortowanie systemu Windows

  • Sortowanie danych za pomocą transformacja sortowania.

    transformacja sortowania używa sortowanie systemu Windows do sortowania wartości ciąg.

    — lub —

  • Użyj operator CAST języka Transact-SQL do pierwszego oddanych varchar wartości do nvarchar wartości, a następnie użyj języka Transact-SQL klauzula ORDER do sortowania danych.

    Ważna informacjaWażne:

    Nie można użyć klauzula ORDER BY samodzielnie, ponieważ korzysta z klauzula ORDER BY SQL Server sortowanie, aby posortować wartości ciąg.Korzystanie z SQL Server Sortowanie może spowodować inny kolejność sortowania sortowania niż sortowanie systemu Windows, które powodują transformacja korespondencji seryjnej lub Merge Join dawać nieoczekiwane wyniki.

Ustawianie opcji sortowania danych

Istnieją dwie właściwości sortowania ważne, które muszą być zestaw źródło lub nadrzędny transformacja, dostarczający danych dla korespondencji seryjnej i Merge Join transformacja:

  • IsSorted właściwość wskazuje, czy dane zostały posortowane dane wyjściowe.Ta właściwość musi być zestaw do True.

    Ważna informacjaWażne:

    Ustawienie wartości IsSorted Właściwość True nie umożliwiają sortowania danych.Ta właściwość zawiera tylko wskazówkę składniki podrzędne że dane zostały wcześniej posortowane.

  • SortKeyPosition właściwość kolumn wyjściowych, która wskazuje, czy sortowana kolumna, kolejność sortowania kolumn i kolejność sortowania wielu kolumn.Ta właściwość musi być zestaw dla każdej kolumna posortowane dane.

Jeśli używasz transformacja sortowanie do sortowania danych transformacja sortowania ustawia obu tych właściwości wymagane przez transformacja korespondencji seryjnej lub Merge Join.Oznacza to, że transformacja sortowania ustawia IsSorted Właściwość dane wyjściowe do Truei ustawia SortKeyPosition właściwości jego kolumn wyjściowych.

Jednak nie należy używać transformacja sortowanie do sortowania danych, należy zestaw te sortować ręcznie właściwości źródło lub nadrzędny transformacja.Aby ręcznie zestaw właściwości sortowania na źródło lub nadrzędny transformacja, należy użyć następującej procedury.

Aby ręcznie ustawić atrybutów sortowania na źródło lub transformacja składnika

  1. W Business Intelligence Development Studio, otwórz Integration Services Projekt, który zawiera pakiet możesz chcieć.

  2. W oknie Solution Explorer kliknij dwukrotnie pakiet, aby go otworzyć.

  3. Na Przepływ danych kartę, zlokalizować odpowiedniego źródło lub nadrzędny transformacja lub przeciągnij go z Przybornik na powierzchnię projektu.

  4. Kliknij składnik prawym przyciskiem myszy, a następnie kliknij przycisk Pokaż zaawansowanego edytora.

  5. Kliknij dane wejściowe i wyjściowe właściwości kartę.

  6. Kliknij <Nazwa składnika> produkcji, i zestaw IsSorted Właściwość True.

    Ostrzeżenie

    Jeśli użytkownik ręcznie zestaw IsSorted Właściwość dane wyjściowe do True i danych nie jest posortowana, może brakować danych lub złe dane porównań niższego rzędu transformacja korespondencji seryjnej lub Merge Join podczas uruchamiania pakiet.

  7. Rozwiń kolumn wyjściowych.

  8. Kliknij kolumna, którą chcesz wskazać jest sortowany i zestaw jego SortKeyPosition właściwość na wartość niezerową liczbą całkowitą, według poniższych wskazówek:

    • Wartość całkowita musi reprezentować sekwencję liczbową, począwszy od 1 i zwiększając 1.

    • Wartość dodatnia liczba całkowita oznacza rosnącej kolejność sortowania.

    • Wskazuje wartość ujemną całkowitą malejącej kolejność sortowania.(Jeśli zestaw do liczby ujemnej wartości bezwzględnej liczby określa położenie kolumna w kolejności sortowania.)

    • Domyślna wartość 0 wskazuje, że kolumna nie jest posortowana.Pozostaw wartość 0 dla kolumn wyjściowych, które nie uczestniczą w sortowaniu.

    Jako przykład tego, jak ustawić SortKeyPosition właściwość, należy uwzględnić następujące Transact-SQL instrukcja, która powoduje załadowanie danych ze źródła:

    SELECT * FROM MyTable ORDER BY ColumnA, ColumnB DESC, ColumnC

    To instrukcja, należy ustawić SortKeyPosition właściwość dla każdej kolumna w następujący sposób:

    • Ustaw SortKeyPosition Właściwość ColumnA na wartość 1.Oznacza to, że ColumnA jest pierwszą kolumna sortowania i posortowane w porządku rosnącym.

    • Ustaw SortKeyPosition właściwość ColumnB-2.To oznacza, że ColumnB jest druga kolumna sortowania i sortowane w kolejności malejącej

    • Ustaw SortKeyPosition właściwość ColumnC 3.Oznacza to, że ColumnC jest trzeciej kolumna sortowania i posortowane w porządku rosnącym.

  9. Powtórz krok 8 dla każdej kolumna sortowane.

  10. Click OK.

  11. Aby zapisać zaktualizowany pakiet, kliknij Zapisać wybrane elementy na pliku menu.