Compartir a través de


SELECT DISTINCT FROM <model > (DMX)

Se aplica a: SQL Server Analysis Services

Devuelve todas los estados posibles para la columna seleccionada del modelo. Los valores devueltos varían dependiendo de si la columna especificada contiene valores discretos, valores numéricos de datos discretos o valores numéricos continuos.

Sintaxis

SELECT [FLATTENED] DISTINCT [TOP <n>] <expression list> FROM <model>   
[WHERE <condition list>][ORDER BY <expression>]  

Argumentos

n
Opcional. Entero que especifica el número de filas que se devuelve.

lista de expresiones
Lista delimitada por comas de expresiones o identificadores de columna (derivados del modelo) relacionados.

model
Identificador de modelo.

lista de condiciones
Condición para restringir los valores que devuelve la lista de columnas.

expresión
Opcional. Expresión que devuelve un valor escalar.

Comentarios

La instrucción SELECT DISTINCT FROM solo funciona con una sola columna o con un conjunto de columnas relacionadas. Esta cláusula no funciona con un conjunto de columnas no relacionadas.

La instrucción SELECT DISTINCT FROM permite hacer referencia directamente a una columna dentro de una tabla anidada. Por ejemplo:

<model>.<table column reference>.<column reference>  

Los resultados de la instrucción de modelo> SELECT DISTINCT FROM <varían, en función del tipo de columna. En la siguiente tabla se describen los tipos de columna admitidos y la salida de la instrucción.

Tipo de columna Output
Discrete Valores únicos de la columna.
Discretized Punto medio de cada depósito de datos discretos de la columna.
Continuo Punto medio de los valores de la columna.

Ejemplo de columna discreta

El ejemplo de código siguiente se basa en el [TM Decision Tree] modelo que se crea en el Tutorial básico de minería de datos. La consulta devuelve los valores únicos que existen en la columna discreta Gender.

SELECT DISTINCT [Gender]  
FROM [TM Decision Tree]  

Resultados de ejemplo:

Género
F
M

Para las columnas que contienen valores discretos, los resultados incluyen siempre el estado Ausente, mostrado como un valor nulo.

Ejemplo de columna continua

El siguiente ejemplo de código devuelve el punto medio y la antigüedad máxima y mínima de todos los valores de la columna.

SELECT DISTINCT [Age] AS [Midpoint Age],   
    RangeMin([Age]) AS [Minimum Age],   
    RangeMax([Age]) AS [Maximum Age]  
FROM [TM Decision Tree]  

Resultados de ejemplo:

Midpoint Age Minimum Age Maximum Age
62 26 97

La consulta también devuelve una fila de valores nulos para representar los valores ausentes.

Ejemplo de columnas de datos discretos

En el ejemplo de código siguiente se devuelven los valores medio, máximo y mínimo de cada cubo creado por el algoritmo para la columna , [Yearly Income]. Para reproducir los resultados de este ejemplo, debe crear una nueva estructura de minería de datos que sea igual que [Targeted Mailing]. En el asistente, cambie el tipo de contenido de la Yearly Income columna de Continuo a Discreto.

Nota:

También puede cambiar el modelo de minería de datos creado en el Tutorial básico de minería de datos para discretizar la columna de estructura de minería de datos, [Yearly Income]. Para obtener información sobre cómo hacerlo, vea Cambiar la discretización de una columna en un modelo de minería de datos. Sin embargo, al cambiar la discretización de la columna, se volverá a procesar la estructura de minería de datos, lo que cambiará los resultados de otros modelos generados usando esa estructura.

SELECT DISTINCT [Yearly Income] AS [Bucket Average],   
    RangeMin([Yearly Income]) AS [Bucket Minimum],   
    RangeMax([Yearly Income]) AS [Bucket Maximum]  
FROM [TM Decision Tree]  

Resultados de ejemplo:

Bucket Average Bucket Minimum Bucket Maximum
24610.7 10 000 39221.41
55115.73 39221.41 71010.05
84821.54 71010.05 98633.04
111633.9 98633.04 124634.7
147317.4 124634.7 170000

Puede ver que los valores de la [Yearly Income] columna se han discretizado en cinco cubos, además de una fila adicional de valores NULL, para representar los valores que faltan.

El número de posiciones decimales de los resultados depende del cliente usado para la consulta. Aquí se han redondeado a dos posiciones decimales, tanto por simplicidad como para reflejar los valores que se muestran en SQL Server Data Tools (SSDT).

Por ejemplo, si examina el modelo usando el Visor de árbol de decisión y hace clic en un nodo que contiene clientes agrupados por ingresos, se muestran las propiedades de nodo siguientes en la información sobre herramientas:

Edad >=69 E Ingresos < anuales 39221.41

Nota:

El valor mínimo del depósito mínimo y el valor máximo del depósito máximo son los valores observados más altos y más bajos. Los valores que queden fuera de este intervalo observado se supone que pertenecen a los depósitos mínimo y máximo.

Consulte también

SELECT (DMX)
Instrucciones de manipulación de datos de extensiones de minería de datos (DMX)
Referencia de instrucciones de Extensiones de minería de datos (DMX)