Gibt es eine Möglichkeit, table_id in einer Big Query Table Wildcard-Abfrage auszuwählen

8

Ich habe eine Reihe von Tagesdaten, bei denen einzelne Einträge den Tag nicht enthalten. Ich möchte Tabellenplatzhalter verwenden, um alle verfügbaren Daten auszuwählen und Daten zurückzurufen, die sowohl nach der Spalte, an der ich interessiert bin, als auch nach dem Tag, an dem sie erfasst wurde, gruppiert sind. Etwas, mit anderen Worten, so:

%Vor%

Das funktioniert natürlich nicht, da table_id in der Tabellenaggregation, die aus der TABLE_QUERY-Funktion resultiert, nicht sichtbar ist. Gibt es einen Weg, dies zu erreichen? Irgendeine Art von Join auf Tabellenmetadaten vielleicht?

    
OverclockedTim 18.04.2014, 16:28
quelle

2 Antworten

4

Diese Funktionalität ist jetzt in BigQuery über _TABLE_SUFFIX pseudo-column verfügbar. Die vollständige Dokumentation finden Sie unter Ссылка . Ein paar Dinge zu beachten:

  • Sie müssen Standard-SQL verwenden, um Platzhalter für Tabellen zu aktivieren.
  • Sie müssen _TABLE_SUFFIX in etwas anderes in Ihrer SELECT -Liste umbenennen, d. h. das folgende Beispiel veranschaulicht es

    SELECT _TABLE_SUFFIX as table_id, ... FROM 'MyDataset.MyTablePrefix_*'

Mosha Pasumansky 04.10.2016, 04:15
quelle
9

Heute nicht verfügbar, aber etwas, das ich auch gerne hätte. Das Team nimmt Feature-Anfragen ernst, also danke für die Unterstützung für dieses:).

In der Zwischenzeit führt eine Problemumgehung eine manuelle Vereinigung einer SELECT-Anweisung jeder Tabelle sowie eine zusätzliche Spalte mit den Datumsdaten durch.

Zum Beispiel statt:

%Vor%

Sie könnten tun:

%Vor%     
Felipe Hoffa 18.04.2014 22:31
quelle

Tags und Links