Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Get inspired! Check out the entries from the Power BI DataViz World Championships preliminary rounds and give kudos to your favorites. View the vizzies.

Reply
Syndicate_Admin
Administrator
Administrator

Mostrar solo un subconjunto o una muestra de datos con Direct Query

Hola

Tengo una tabla con muchos millones de URL de imágenes y me conecto a ella a través de Direct Query.

Podemos suponer que las columnas de la tabla son PAÍS / ESTADO / ALMACÉN / FECHA / VALOR / URL DE IMAGEN.

El país, el estado, el almacén y la fecha serán segmentaciones en mi informe. Lo importante: > debido a un problema de confidencialidad de datos, quiero permitir que los usuarios del informe siempre vean un máximo de 10 imágenes (aleatorias), dadas las selecciones de segmentación que han realizado.

Pensé que simplemente podría poner un filtro TOP N basado en VALOR en mi visual, pero eso no parece funcionar.

La función SAMPLE también parecía prometedora, pero también devuelve un error ("El conjunto de resultados de una consulta a un origen de datos externo ha superado el tamaño máximo permitido de '1000000' filas").

Debido a que quiero mostrar 10 imágenes sin importar la selección que haga un usuario en las segmentaciones de datos, tampoco puedo limitar las filas en la instrucción SQL.

¿Alguna idea de cómo puedo lograr lo que necesito?

1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

Me di cuenta de que, en lugar de hacer algo complicado en PowerBI, tiene mucho más sentido hacer algo un poco más complicado directamente en la instrucción SQL.

Para cualquier otra persona con el mismo problema, esta es la solución perfecta para mí:

select * from prod.sales
where 
     invoice_date > current_timestamp - interval '30 days'
qualify
     row_number() over(partition by country, state, warehouse, date order by value DESC) <=10

View solution in original post

3 REPLIES 3
Syndicate_Admin
Administrator
Administrator

Me di cuenta de que, en lugar de hacer algo complicado en PowerBI, tiene mucho más sentido hacer algo un poco más complicado directamente en la instrucción SQL.

Para cualquier otra persona con el mismo problema, esta es la solución perfecta para mí:

select * from prod.sales
where 
     invoice_date > current_timestamp - interval '30 days'
qualify
     row_number() over(partition by country, state, warehouse, date order by value DESC) <=10
Syndicate_Admin
Administrator
Administrator

@Mr_Glister , cree una medida de número de fila basada en las columnas utilizadas en el objeto visual y, a continuación, úsela como filtro de nivel visual

ejemplo

Nuevo número de fila = ROWNUMBER(ALLSELECTED(Sales[Order No]),ORDERBY([Net],DESC))

o

Nuevo número de fila = ROWNUMBER(ALLSELECTED(Sales[Nº de pedido], sales[ID de artículo]),ORDERBY([Neto],DESC))

Este @अमितचंदक,

Probé su enfoque y también vi su video, pero me encuentro con el mismo problema que cuando uso TOP N en el filtro visual.

Mr_Glister_1-1713510127582.png

Mr_Glister_0-1713510082500.png

Helpful resources

Announcements
Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code FABINSIDER for a $400 discount!

FebPBI_Carousel

Power BI Monthly Update - February 2025

Check out the February 2025 Power BI update to learn about new features.

March2025 Carousel

Fabric Community Update - March 2025

Find out what's new and trending in the Fabric community.

Top Solution Authors
Top Kudoed Authors