Compartilhar via


SELECT (DMX)

A instrução SELECT DMX é utilizada para as seguintes tarefas em mineração de dados:

  • Navegar o conteúdo de um modelo de mineração existente

  • Criar previsões de um modelo de mineração existente

  • Criar uma cópia de um modelo de mineração existente.

  • Navegar a estrutura de mineração

Embora a sintaxe completa desta instrução seja complexa, a principais cláusulas para navegar um modelo e sua estrutura subjacente podem ser sumarizadas como segue:

SELECT [FLATTENED] [TOP <n>] <select list>
FROM <model/structure>[.aspect]
[WHERE <condition expression>]
[ORDER BY <expression>[DESC|ASC]]

FLATTENED (mesclado/nivelado)

Alguns clientes de mineração de dados não podem aceitar conjuntos de resultados em formato hierárquico de um provedor de mineração de dados. O cliente pode não ter a habilidade de manusear a hierarquia ou ele pode ter que armazenar os resultados em uma tabela simples não normalizada. Para converter os dados de tabelas aninhadas para tabelas mescladas, você deve requerer que os resultados da consulta sejam mesclados.

Para mesclar os resultados de consulta, use a sintaxe SELECT com a opção FLATTENED, como mostrado no exemplo seguinte:

SELECT FLATTENED <select list> FROM ...

TOP &lt;n&gt; e ORDER BY

Você pode ordenar os resultados de uma consulta usando uma expressão e pode receber um subconjunto dos resultados usando uma combinação das cláusulas ORDER BY e TOP. Isto é útil em um cenário como o de mala direta onde você deseja enviar os resultados para quem tenha mais probabilidade de responder. Você poderia classificar os resultados de uma consulta de previsão de mala direta pela previsão de probabilidade e retornar somente os primeiros <n> resultados.

Lista de seleção

O <select list> pode incluir referências de coluna de escalar, funções de previsão e expressões. As opções que estão disponíveis dependem do algoritmo e dos contextos seguintes:

  • Se você está consultando uma estrutura de mineração ou um modelo de mineração

  • Se você está consultando conteúdo ou casos

  • Se dados de origem são uma tabela relacional ou um cubo

  • Se você esta fazendo previsões

Em muitos casos, você pode usar aliases ou criar expressões simples com base nos itens da lista de seleção. Por exemplo, uma expressão simples em colunas de modelo:

SELECT [CustomerID], [Last Name] + ', ' + [FirstName] AS FullName
FROM <model>.CASES

O exemplo seguinte cria um alias para uma coluna que contém os resultados de uma função de previsão:

SELECT Predict([Column1], 'Value') as Column1Prediction
FROM MyModel
JOIN <source data query>

WHERE

É possível limitar os casos que são retornados pela consulta usando uma cláusula WHERE. A cláusula WHERE especifica que a coluna referenciada na expressão WHERE deve ter a mesma semântica que a coluna referenciada na <select list> da instrução SELECT, e pode somente retornar uma expressão booleana. A sintaxe da cláusula WHERE é

WHERE < condition expression >

A lista de seleção e a cláusula WHERE de uma instrução SELECT devem seguir as seguintes regras:

  • A lista de seleção deve conter uma expressão que não retorna um resultado Booleano. É possível modificar a expressão, mas ela deve retornar resultados não Booleanos.

  • A cláusula WHERE deve conter uma expressão que retorna um resultado Booleano. Você pode modificar a cláusula, mas ela deve retornar um resultado Booleano.

Previsões

Há dois tipos de sintaxe que você pode usar para criar previsões:

O primeiro tipo de previsão permite criar previsões complexas em tempo real ou como um lote.

O segundo tipo de previsão cria uma junção de previsão vazia em uma coluna previsível no modelo de mineração e retorna o estado mais provável da coluna. Os resultados desta consulta estão completamente baseados no conteúdo do modelo de mineração.

É possível inserir uma instrução select na consulta de fonte de uma instrução SELECT FROM PREDICTION JOIN usando a sintaxe a seguir.

SELECT FROM PREDICTION JOIN (<SELECT statement>) AS t, WHERE <SELECT statement>

Para obter mais informações sobre como criar consultas de previsão, consulte Consultas de previsão (DMX).

Sintaxe da cláusula

Por causa da complexidade de navegar com a instrução SELECT, elementos de sintaxe detalhados e argumentos são descritos por cláusula. Para obter mais informações sobre cada cláusula, clique em um tópico na lista seguinte:

SELECT DISTINCT FROM <modelo > (DMX)

SELECT FROM <modelo>.CONTENT (DMX)

SELECIONAR A PARTIR DE CASOS DE <modelo> (DMX)

SELECT FROM <modelo>.SAMPLE_CASES (DMX)

SELECT FROM <modelo>.DIMENSION_CONTENT (DMX)

SELECT FROM <modelo> PREDICTION JOIN (DMX)

SELECT FROM <modelo> (DMX)

SELECIONAR A PARTIR DE CASOS DE <structure>.