Discourse Data Explorer Power BI-Integration

Kurzes Update, falls jemand das Skript aus dem ersten Beitrag verbessern möchte.

Es ist tatsächlich möglich, alle Daten auf einmal abzurufen, scheinbar unabhängig von der Datenmenge :sweat_smile:
(Ich habe dies an einer beträchtlichen posts-Tabelle mit den Spalten id und raw einem Stresstest unterzogen, und es hat funktioniert!)

Beispielabfrage:

SELECT      'id'
            || string_agg(E'\n' || case when posts.id::text is null then '-1' else posts.id::text end
            ,''
            ORDER BY posts.id asc) as value
FROM        posts

Wenn Sie diese ausführen, wird Ihre fast-CSV-Datei als ein einziger Wert ausgegeben, also auch auf einer einzigen Seite. Sie müssten dann das value-Feld sowie ein weiteres " am Ende abschneiden, und es wird zu einer brauchbaren CSV:

Natürlich können Sie weitere Daten hinzufügen, indem Sie eine neue Spalte für die CSV-Datei und entsprechende Daten für diese Spalte hinzufügen:

SELECT      'id,newcolumn'
            || string_agg(E'\n' || case when posts.id::text is null then '-1' else posts.id::text end
            || string_agg(E'\n' || case when posts.newcolumn::text is null then '-1' else posts.newcolumn::text end
            ,''
            ORDER BY posts.id asc) as value
FROM        posts

Wenn Power BI so eine Abfrage unterstützt, muss es nicht mehr über mehrere Seiten iterieren, was zu einer schnelleren Datenabfrage führt.

4 „Gefällt mir“