2016-03-18 12 views
1

Hallo Ich konnte das nirgendwo finden.collect_set für Google bigquery

Wie mache ich ein collect_set in Google BigQuery?

Ich habe eine Abfrage bereits in Big Abfrage geschrieben

wählen user_id, Schritte, aus Tabelle

ich brauchen würde, um alle Schritte für jeden user_id in ein Array wie collect_set zu setzen.

Antwort

2

versuchen Sie es mit NEST() Funktion:

SELECT user_id, NEST(steps) AS steps 
FROM table 
GROUP BY user_id 

Siehe unten für einige Tricks, wie NEST Arbeit machen zu können Tabelle würde
BigQuery NEST() returns 'Error: An internal error occurred'

Eine weitere Option nur Liste erstellen sein, schreiben von Schritte als Zeichenfolge mit GROUP_CONCAT:

SELECT user_id, GROUP_CONCAT(steps) AS steps 
FROM table 
GROUP BY user_id 
+0

DANKE! GROUP_CONCAT ist, was ich suche, dann kann ich durch das resultierende Array nach den Elementen suchen, nach denen ich suche. –

Verwandte Themen