top of page

DISTINCTCOUNT_ DISTINCTCOUNTNOBLANK

Esta función nos devuelve los valores distintos de una columna.


Sintaxis

DISTINCTCOUNT(<column>)


Solo tiene un argumento que es columna, que es la columna que contienen los valores a contar.


Tengo cargado en Power BI el modelo CONTOSO, vamos a la vista de informe, vamos a crear una medida para contar la cantidad de tiendas, para ello, vamos a la vista datos a la derecha, hacemos clic con botón alternativo de ratón sobre la tabla ventas, y, seleccionamos nueva medida.


















La vamos a llamar recuento_tiendas, después del signo igual, ponemos la función DISTINCTCOUNT, como argumento columna, ponemos la columna producto.


recuento_tiendas = DISTINCTCOUNT(Ventas[IDTienda])


Creamos una tabla, y, nos llevamos la medida, y, tenemos un recuento de tiendas.


Vamos a crear otra medida, para ello, hacemos clic con botón alternativo de ratón sobre la consulta ventas, y, seleccionamos nueva medida.


La vamos a llamar recuento_productos, ponemos DISTINCTCOUNT, y, como argumento ponemos la columna IDProducto.


recuento_productos = DISTINCTCOUNT(Ventas[IDProducto])


Creamos otra variable, la vamos a llamar recuento_promocion, volvemos a usar DISTINCTCOUNT, como argumento ponemos la columna IDPromocion.


recuento_promocion = DISTINCTCOUNT(Ventas[IDPromocion])


Vamos a la vista de informe, creamos una tabla, y, llevamos los siguientes campos:















Tenemos una tabla con cada nombre de tienda, los productos vendidos en cada tienda, y, las promociones aplicadas para cada tienda.














Ahora, queremos crear el mismo informe, pero que solo salgan los productos que han sido vendidos a partir de 40 unidades.


Volvemos a crear una medida, la vamos a llamar productos_mayor_40, creamos una variable, y, almacenamos la función DISTINCTCOUNT, y, como argumento ponemos la columna IDProducto.


productos_mayor_40 =


var recuento=DISTINCTCOUNT(Ventas[IDProducto])


Ponemos la palabra return.


Usamos la función IF, donde preguntamos que, si la variable recuento es mayor a 40, que nos devuelva la variable, en caso contrario, que devuelva blanco.


productos_mayor_40 =

var recuento=DISTINCTCOUNT(Ventas[IDProducto])

return

IF(recuento>40,recuento,BLANK())


Creamos otra tabla, nos llevamos el campo tienda de la tabla tienda, y, la medida.












Tenemos las tiendas donde se han vendido una cantidad de productos mayor a 40.













Usar la función COUNTROWS y DISTINCT es lo mismo que usar la función DISTINCTCOUNT.


Veamos ahora la función DISTINCTCOUNTNOBLANK, cuenta el numero de valores distintos de una columna, ignorando las filas vacías, tiene el mismo argumento que la función DISTINCTCOUNT.


Ahora, vamos a trabajar con un modelo llamado Practicas, que es el que suelo usar en Excel, en la columna fecha, faltan fechas, creamos una medida, declaramos una variable, la vamos a llamar con blancos, donde usamos DISTINCTCOUNT, y, como argumento ponemos la columna fecha.


Medida =

var con_blancos=DISTINCTCOUNT(Practicas[Fecha])


Creamos otra variable, la llamamos sin blancos, usamos la función DISTINCTCOUNTNOBLANK, y, como argumento volvemos a poner la columna fecha.


Medida =

var con_blancos=DISTINCTCOUNT(Practicas[Fecha])

var sin_blancos=DISTINCTCOUNTNOBLANK(Practicas[Fecha])


Ponemos la palabra return.


Concatenamos la variable con_blancos, con un espacio, y, con la variable sin_blancos.


Medida =

var con_blancos=DISTINCTCOUNT(Practicas[Fecha])

var sin_blancos=DISTINCTCOUNTNOBLANK(Practicas[Fecha])

return

con_blancos&" "&sin_blancos


Creamos otra tabla y nos llevamos la medida.







El resultado de DISTINCTCOUNT es de 794, porque cuenta un blanco como una fila más, el resultado de DISTINCTCOUNTNOBLANK, devuelve 793, porque las filas, o, celdas en blancos fueron ignoradas.



Miguel Angel Franco

 
 
 

Comentarios


© 2019 Miguel Ángel Franco García

bottom of page