Udostępnij za pośrednictwem


Model, SELECT FROM < > przewidywanie łączyć (DMX)

Wykorzystuje model typu wyszukiwania do przewidywania stany kolumny w danych zewnętrznych urządzenie źródłowe.The PREDICTION JOIN instrukcja matches each przypadek from the urządzenie źródłowe query to the model.

SELECT [FLATTENED] [TOP <n>] <select expression list> 
FROM <model> | <sub select> [NATURAL] PREDICTION JOIN 
<source data query> [ON <join mapping list>] 
[WHERE <condition expression>]
[ORDER BY <expression> [DESC|ASC]]

Argumenty

  • n
    Opcjonalne.Liczba całkowita, która określa liczbę wierszy, aby powrócić.

  • select expression list
    Rozdzielana przecinkami lista identyfikatorów kolumna i wyrażenia, które są obliczane na podstawie model wyszukiwania.

  • model
    Identyfikator modelu.

  • sub select
    Osadzone instrukcja select.

  • source data query
    urządzenie źródłowe Kwerendy.

  • join mapping list
    Opcjonalne.Wyrażenie logiczne, które porównuje kolumny z modelu kolumn z urządzenie źródłowe kwerendy.

  • condition expression
    Opcjonalne.Stan, aby ograniczyć wartości, które są zwracane z kolumna listy.

  • expression
    Opcjonalne.Wyrażenie zwracające wartość wartość skalarna.

Remarks

Klauzula ON definiuje mapowanie między kolumny z urządzenie źródłowe kwerendy i kolumny z modelu wyszukiwania.To mapowanie jest używane do kierowania danych od urządzenie źródłowe kwerendy do kolumn w model wyszukiwania tak, aby kolumny mogą być używane jako dane wejściowe w tworzeniu prognoz.Kolumny w <join mapping list> powiązane przy użyciu znaku równooci (=), jak pokazano w poniższym przykładzie:

[MiningModel].ColumnA = [source data query].Column1 AND 
[MiningModel].ColumnB = [source data query].Column2 AND
...

Zagnieżdżona tabela jest wiązane w klauzula ON, upewnij się, że powiązać kolumnę klucz z kolumn nie będąca kluczem tak, aby algorytm może poprawnie zidentyfikować wówczas rekord zagnieżdżonych kolumna należy.

Kwerendę źródłową dla łączyć przewidywanie mogą być albo tabela lub kwerendy pojedynczych.

Można określić przewidywanie funkcje, które nie zwracają wyrażenie tabela w <select expression list> oraz <condition expression>.

NATURAL PREDICTION JOIN automatycznie mapuje razem z kwerendy źródłowej nazwy kolumn, które pasują do nazw kolumn w modelu.Jeśli używasz NATURAL PREDICTION, to można pominąć klauzula ON.

Warunek WHERE mogą być stosowane tylko do przewidywalnego kolumny lub kolumn pokrewnych.

KOLEJNOŚĆ klauzula może akceptować tylko jednej kolumna jako argument, oznacza to, nie można sortować według więcej niż jedną kolumna.

Przykład 1: Pojedyncza Query

W poniższym przykładzie pokazano, jak utworzyć kwerendę do przewidywania, czy określonej osoby będą kupić rowerów w czasie rzeczywistym.W tej kwerendzie dane nie są przechowywane w tabela lub innego urządzenie źródłowe danych, ale zamiast tego zostanie wprowadzona bezpośrednio do kwerendy.Osoby w kwerendzie ma następujące cechy:

  • 35 lat

  • Właścicielem domu

  • Jest właścicielem dwóch samochodów

  • W Główny ma dwa elementy podrzędne

Korzystając z modelu TM algorytm wyszukiwania i znanych właściwości dotyczące tematu, kwerenda zwraca logiczny, która opisuje, czy osoba zakupione rowerów, a co zestaw wartości tabelarycznych, zwracane przez PredictHistogram (DMX) Funkcja, opisujących dokonano przewidywanie.

SELECT
  [TM Decision Tree].[Bike Buyer],
  PredictHistogram([Bike Buyer])
FROM
  [TM Decision Tree]
NATURAL PREDICTION JOIN
(SELECT 35 AS [Age],
  '5-10 Miles' AS [Commute Distance],
  '1' AS [House Owner Flag],
  2 AS [Number Cars Owned],
  2 AS [Total Children]) AS t

Przykład 2: Przy użyciu OPENQUERY

W poniższym przykładzie pokazano, jak utworzyć kwerendę przewidywanie instancji przy użyciu listy potencjalnych klientów, przechowywane w zestawu danych zewnętrznych.Ponieważ w tabela jest częścią widoku urządzenie źródłowe danych, który został zdefiniowany na wystąpienie Analysis Services, można użyć kwerendy OPENQUERY do pobierania danych.Ponieważ nazwy kolumn w tabela różnią się od wartości model wyszukiwania, ON Klauzula musi być używany do mapowania kolumn w tabela kolumn w modelu.

Kwerenda zwraca imię i nazwisko osoby, w tabela, wraz z kolumna typu logiczny, która wskazuje, czy każda osoba może kupić rowerów, gdzie 0 oznacza, że "prawdopodobnie będzie nie kupują rower", a 1 oznacza "prawdopodobnie będzie kupić rower".Ostatnia kolumna zawiera prawdopodobieństwa dla przewidywanych wyników.

SELECT
  t.[LastName],
  t.[FirstName],
  [TM Decision Tree].[Bike Buyer],
  PredictProbability([Bike Buyer])
From
  [TM Decision Tree]
PREDICTION JOIN
  OPENQUERY([Adventure Works DW],
    'SELECT
      [LastName],
      [FirstName],
      [MaritalStatus],
      [Gender],
      [YearlyIncome],
      [TotalChildren],
      [NumberChildrenAtHome],
      [Education],
      [Occupation],
      [HouseOwnerFlag],
      [NumberCarsOwned]
    FROM
      [dbo].[ProspectiveBuyer]
    ') AS t
ON
  [TM Decision Tree].[Marital Status] = t.[MaritalStatus] AND
  [TM Decision Tree].[Gender] = t.[Gender] AND
  [TM Decision Tree].[Yearly Income] = t.[YearlyIncome] AND
  [TM Decision Tree].[Total Children] = t.[TotalChildren] AND
  [TM Decision Tree].[Number Children At Home] = t.[NumberChildrenAtHome] AND
  [TM Decision Tree].[Education] = t.[Education] AND
  [TM Decision Tree].[Occupation] = t.[Occupation] AND
  [TM Decision Tree].[House Owner Flag] = t.[HouseOwnerFlag] AND
  [TM Decision Tree].[Number Cars Owned] = t.[NumberCarsOwned]

Aby ograniczyć zestaw danych do klientów, którzy są przewidywane kupić rowerów, a następnie posortować ją według nazwy odbiorcy, można dodać klauzulę WHERE i klauzulę ORDER BY w poprzednim przykładzie:

WHERE [BIKE Buyer]
ORDER BY [LastName] ASC

Przykład 3: Przewidywana skojarzenia

W poniższym przykładzie przedstawiono sposób tworzenia przewidywanie przy użyciu modelu, który składa się z Microsoft Algorytm skojarzenia. Prognoz na skojarzenie modelu można zalecić pokrewnych produktów.Na przykład poniższa kwerenda zwraca trzy produkty, które są najczęściej kupowanych wraz z trzech następujących produktów:

  • Mountain Bottle Cage

  • Mountain Tire Tube

  • Rower górski 200

The Przewidywanie (DMX) funkcja is polymorphic and can be used with all model types. Aby ograniczyć liczbę elementów, które są zwracane przez kwerendy za pomocą value3 jako argument funkcja.The SELECT list that follows the NATURAL przewidywanie łączyć klauzula supplies the values to use as input for przewidywanie.

SELECT FLATTENED
  PREDICT([Association].[v Assoc Seq Line Items], 3)
FROM
  [Association]
NATURAL PREDICTION JOIN
(SELECT (SELECT 'Mountain Bottle Cage' AS [Model]
  UNION SELECT 'Mountain Tire Tube' AS [Model]
  UNION SELECT 'Mountain-200' AS [Model]) AS [v Assoc Seq Line Items ]) AS t

Przykład wyniki:

wyrażenie.Model

HL Mountain Tire

Butli wody

Fender Set - Mountain

Ponieważ kolumnę, która zawiera atrybut przewidywalny, [v Assoc Seq Line Items], to kolumna tabela, kwerenda zwraca jedną kolumnę, która zawiera zagnieżdżoną tabela. Domyślnie nosi nazwę kolumna w tabela zagnieżdżonej Expression. Jeśli dostawca nie obsługuje hierarchicznych zestawów wierszy, można użyć FLATTENED słowo kluczowe, jak pokazano w poniższym przykładzie ułatwiają wyświetlanie wyniki.