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

Grow your Fabric skills and prepare for the DP-600 certification exam by completing the latest Microsoft Fabric challenge.

Reply
Syndicate_Admin
Administrator
Administrator

Consulta no admitida en modo DirectQuery - SQL con subconsulta

Estoy intentando organizar los datos de un servidor SQL eliminando las filas que contienen duplicados en una determinada columna. Al usar la función normal de quitar duplicados después de una simple conexión de base de datos en Power Query, recibí el error "no compatible con DirectQuery". Pensé que podría escribir una instrucción SQL y usar la conexión avanzada a la base de datos para evitar este error:

Seleccione * de la base de datos como db,
(seleccione min(dateandtime) como dateandtime, num, seq, type from database
donde seq = 1
y tipo = 'A'
agrupar por seq, num, type) Min_Date
donde db.dateandtime = min_date.dateandtime

Pero esto también arroja el error no soportado. Sé que una solución es cambiar a una conexión de importación en lugar de DirectQuery, pero esa ruta es altamente indeseable. Cualquier ayuda que pueda dar en una solución alternativa para este método de eliminación de duplicados sería muy apreciada.

Gracias

4 REPLIES 4
Syndicate_Admin
Administrator
Administrator

@nhallmark,

Cambié la cláusula SELECT en su SQL personalizado a "Select db.*" para evitar devolver las columnas dos veces, y se ejecutó correctamente. ¿Lo confirmaría? Si esto no funciona, proporcione datos de muestra y una captura de pantalla del error.

Hice el cambio y la consulta se ejecutó, pero una vez que intenté hacer cualquier cambio básico, como ordenar o filtrar una columna, el error se arroja nuevamente. Aquí hay algunos datos de muestra que estoy utilizando:

nhallmark_0-1663846040098.png

Este es el SQL exacto que ejecuté:

Seleccione stl.dateandtime, stl.htnum, stl.seq, stl.atype, stl.ccode de lab_stl stl,
(seleccione min(dateandtime) como dateandtime, htnum, seq, atype de lab_stl
donde atype = 'L'
y seq = 2

y htnum < '100'
grupo por seq, htnum, atype) Min_Date
donde stl.dateandtime = min_date.dateandtime;

nhallmark_2-1663846298262.png

La consulta funcionó bien, pero cuando ordené por la columna ccode en orden descendente en (puede ver el paso dado en el extremo derecho) se arroja el error (barra amarilla sobre los datos). Sé que puedo hacer ajustes como este en SQL, pero necesito poder hacer ajustes dentro de Power BI porque deseo combinar datos de dos orígenes diferentes en una tabla maestra y no puedo hacerlo en SQL y usarlo en Power BI (creo).

¡Gracias por su ayuda!

@nhallmark,

Cualquier paso M después de un paso SQL personalizado evitará el plegamiento de la consulta. Aquí hay una manera de hacerlo en M (sin SQL personalizado).

1. Conéctese a la tabla (DirectQuery). Nombre de la consulta: lab_stl_all

DataInsights_0-1663854490874.png

2. Cree una consulta Group By basada en lab_stl_all (por referencia). Nombre de la consulta: lab_stl_group_by

DataInsights_3-1663854709666.png

DataInsights_1-1663854586062.png

3. Cree lab_stl de consulta usando "Combinar consultas como nuevas". Esta será una unión interna entre lab_stl_all y lab_stl_group_by. Utilice Ctrl y haga clic para seleccionar varias columnas de unión.

DataInsights_4-1663854855669.png

4. Resultado:

DataInsights_5-1663854931476.png

Tenga en cuenta que la tabla resultante utiliza el modo importar.

¿Por qué se marcó esto como la solución?

La pregunta requería compatibilidad con el modo DirectQuery, pero la última línea es "Tenga en cuenta que la tabla resultante usa el modo de importación".

Helpful resources

Announcements
Europe Fabric Conference

Europe’s largest Microsoft Fabric Community Conference

Join the community in Stockholm for expert Microsoft Fabric learning including a very exciting keynote from Arun Ulag, Corporate Vice President, Azure Data.

RTI Forums Carousel3

New forum boards available in Real-Time Intelligence.

Ask questions in Eventhouse and KQL, Eventstream, and Reflex.

MayPowerBICarousel1

Power BI Monthly Update - May 2024

Check out the May 2024 Power BI update to learn about new features.

Top Solution Authors
Top Kudoed Authors