PredictAssociation (DMX)
适用于: SQL Server Analysis Services
预测关联的成员身份。
例如,可以使用 PredictAssociation 函数获取一组建议,给定客户购物篮的当前状态。
语法
PredictAssociation(<table column reference>, option1, option2, n ...)
应用于
包含可预测嵌套表的算法,包括关联和某些分类算法。 支持嵌套表的分类算法包括Microsoft决策树、Microsoft Naive Bayes 和Microsoft神经网络算法。
返回类型
<表表达式>
注解
PredictAssociation 函数的选项包括EXCLUDE_NULL、INCLUDE_NULL、INCLUSIVE、EXCLUSIVE(默认)、INPUT_ONLY、INCLUDE_STATISTICS和INCLUDE_NODE_ID。
注意
INCLUSIVE、EXCLUSIVE、INPUT_ONLY 和 INCLUDE_STATISTICS 只适用于表列引用;EXCLUDE_NULL 和 INCLUDE_NULL 只适用于标量列引用。
INCLUDE_STATISTICS仅返回 $Probability 和 $AdjustedProbability。
如果指定了数值参数 n,PredictAssociation 函数将基于概率返回最可能的前 n 个值:
PredictAssociation(colref, [$AdjustedProbability], n)
如果包括$AdjustedProbability,则语句将基于$AdjustedProbability返回前 n 个值。
示例
以下示例使用 PredictAssociation 函数返回 Adventure Works 数据库中最有可能一起销售的四个产品。
SELECT
PredictAssociation([Association].[v Assoc Seq Line Items],4)
From
[Association]
以下示例演示如何使用 SHAPE 子句将嵌套表用作预测函数的输入。 SHAPE 查询创建一个行集,其中 customerId 为一列,嵌套表作为第二列,其中包含客户已引入的产品列表。
SELECT T.[CustomerId], PredictAssociation(MyNestedTable, 5) // returns top 5 associated items
FROM My Model
PREDICTION JOIN
SHAPE {
OPENQUERY([Adventure Works DW],'SELECT CustomerID, OrderNumber
FROM vAssocSeqOrders ORDER BY OrderNumber')
} APPEND (
{OPENQUERY([Adventure Works DW],'SELECT OrderNumber, model FROM
dbo.vAssocSeqLineItems ORDER BY OrderNumber, Model')}
RELATE OrderNumber to OrderNumber) AS T