扩展插件DMX的INSERT INTO语句


处理指定的数据挖掘对象。有关处理挖掘模型和挖掘结构的详细信息,请参阅处理数据挖掘对象。

  如果指定了挖掘结构,则该语句将处理挖掘结构及其关联的所有挖掘模型。如果指定了挖掘模型,则该语句将只处理挖掘模型。

  语法


Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->INSERT INTO [MINING MODEL]|[MINING STRUCTURE] <model>|<structure> (<mapped model columns>) <source data query>
INSERT INTO [MINING MODEL]|[MINING STRUCTURE] <model>|<structure>.COLUMN_VALUES (<mapped model columns>) <source data query> 参数
  model
  模型标识符。

  structure
  结构标识符。

  mapped model columns
  一组以逗号分隔的列标识符和嵌套标识符。

  source data query
  采用提供程序所定义格式的源查询。

  备注
  如果不指定 MINING MODEL 或 MINING STRUCTURE,Analysis Services 将根据名称搜索对象类型,并处理符合条件的对象。如果服务器包含同名的挖掘结构和挖掘模型,将返回错误。

  通过使用第二种语法形式 INSERT INTO <object>.COLUMN_VALUES,可以将数据直接插入模型列中,而无需为模型定型。该方法以一种简练、有序的方式向模型提供列数据,在处理包含层次结构或有序列的数据集时,该方法很有用。

  如果将 INSERT INTO 用于挖掘模型或挖掘结构,并且不使用 <mapped model columns> 和 <source data query> 参数,则该语句的作用类似于 ProcessDefault,使用已经存在的绑定。如果绑定不存在,则语句将返回错误。

  下例说明了该语法:

  INSERT INTO [MINING MODEL] <model>如果指定 MINING MODEL,并提供映射的列和源数据查询,则将处理模型及关联的结构。

  下表说明了不同形式的语句在不同对象状态下返回的结果。

  语句  对象状态  结果 
  INSERT INTO MINING MODEL <模型>
  处理挖掘结构。
  处理挖掘模型。
  
  未处理挖掘结构。
  处理挖掘模型和挖掘结构。
 
  
  挖掘结构包含其他挖掘模型。
  进程失败。必须重新处理结构和关联的挖掘模型。
 
  INSERT INTO MINING STRUCTURE <结构>
  处理或未处理挖掘结构。
  处理挖掘结构和关联的挖掘模型。
 
  INSERT INTO MINING MODEL 包含源查询的 <模型>

  或者

  INSERT INTO MINING STRUCTURE 包含源查询的<结构>
  结构或模型已包含内容。
  进程失败。在执行此操作前,必须使用 DELETE (DMX) 清除对象。

  映射的模型列
  使用 <mapped model columns> 元素,可以将数据源中的列映射到挖掘模型中的列。<mapped model columns> 元素的形式如下:

  <column identifier> | SKIP | <table identifier> (<column identifier> | SKIP), ...使用 SKIP,可以排除在源查询中存在,但挖掘模型中不存在的某些列。如果您无法控制输入行集包含的列,则 SKIP 非常有用。如果您正在编写您自己的 OPENQUERY,更好的做法是从 SELECT 列列表中省略该列,而不是使用 SKIP。

  当需要输入行集中的列来执行联接但该列并非由挖掘结构使用时,SKIP 也将非常有用。其典型示例是包含嵌套表的挖掘结构和挖掘模型。此结构的输入行集将包含一个外键列,该外键列用于借助 SHAPE 子句创建分层行集,但在模型中几乎总是不使用该外键列。

  SKIP 的语法要求您在没有相应挖掘结构列的输入行集的各列位置中插入 SKIP。例如,在下面的嵌套表示例中,必须在 APPEND 子句中选择 OrderNumber,以便在 RELATE 子句中使用 OrderNumber 指定联接;但是,您并不希望将 OrderNumber 数据插入到挖掘结构的嵌套表中。因此,本示例在 INSERT INTO 参数中使用 SKIP 关键字而不是 OrderNumber。

  源数据查询
  <source data query> 元素可以包括下列数据源类型:

  OPENQUERY

  OPENROWSET

  SHAPE

  返回行集的任意 Analysis Services 查询

  基本示例
  在下例中,使用了 OPENQUERY 并根据 AdventureWorksDW 数据库中的目标邮件数据来为 Naive Bayes 模型定型。

  INSERT INTO NBSample (CustomerKey, Gender, [Number Cars Owned],
    [Bike Buyer])
OPENQUERY([Adventure Works DW],'Select CustomerKey, Gender, [NumberCarsOwned], [BikeBuyer]
FROM [vTargetMail]') 嵌套表示例
以下示例使用 SHAPE 来为包含嵌套表的关联挖掘模型定型。请注意,第一行包含 SKIP 而不是 OrderNumber,后者在 SHAPE_APPEND 语句中是必需的,但并不在挖掘模型中使用。

-->INSERT INTO MyAssociationModel
    ([OrderNumber],[Models] (SKIP, [Model])
    )
SHAPE {
    OPENQUERY([Adventure Works DW],'SELECT 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 [Models]


« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3