Data Mining Extensions


Data Mining Extensions (DMX) is a query language for data mining models supported by Microsoft's SQL Server Analysis Services product.

Like SQL, it supports a data definition language, data manipulation language and a data query language, all three with SQL-like syntax. Whereas SQL statements operate on relational tables, DMX statements operate on data mining models. Similarly, SQL Server supports the MDX language for OLAP databases. DMX is used to create and train data mining models, and to browse, manage, and predict against them. DMX is composed of data definition language (DDL) statements, data manipulation language (DML) statements, and functions and operators.


DMX Queries are formulated using the SELECT statement. They can extract information from existing data mining models in various ways.

Data definition languageEdit

The data definition language (DDL) part of DMX can be used to

  • Create new data mining models and mining structures - CREATE MINING STRUCTURE, CREATE MINING MODEL
  • Delete existing data mining models and mining structures - DROP MINING STRUCTURE, DROP MINING MODEL
  • Export and import mining structures - EXPORT, IMPORT
  • Copy data from one mining model to another - SELECT INTO

Data manipulation languageEdit

The data manipulation language (DML) part of DMX can be used to

  • Train mining models - INSERT INTO
  • Browse data in mining models - SELECT FROM
  • Make predictions using mining model - SELECT ... FROM PREDICTION JOIN

Example: a prediction queryEdit

This example is a singleton prediction query, which predicts for the given customer whether she will be interested in home loan products.

  [Loan Seeker],
  PredictProbability([Loan Seeker])
  [Decision Tree]
   35 AS [Age],
   'Y' AS [House Owner],
   'M' AS [Marital Status],
   'F' AS [Gender],
   2 AS [Number Cars Owned],
   2 AS [Total Children],
   18 AS [Total Years of Education]

See alsoEdit

External linksEdit

  • Data Mining Extensions (DMX) Reference, (at MSDN)