BigQuery-Fehler "Antwort zu groß für Rückgabe" bei Verwendung von COUNT (DISTINCT…)

Ich habe einen Datensatz mit ~ 20 Millionen Zeilen und beobachte das folgende Verhalten.

Die folgende Abfrage gibt den Fehler "Antwort zu groß, um zurückzugeben" zurück. Das Feld 'id' wird von mehreren Datensätzen gemeinsam genutzt, und das Feld 'field' hat für jeden Datensatz einen beliebigen Wert. Ich würde erwarten, dass die Ergebnismenge nur 10 Zeilen enthalten sollte, und zwar deutlich unterhalb der Antwortgrenze für Abfragen.

SELECT id, COUNT(DISTINCT field)
FROM [my.dataset]
GROUP BY id
LIMIT 10

Wenn jedoch das Schlüsselwort DISTINCT aus der COUNT-Aggregationsfunktion entfernt wird, gibt BigQuery erwartungsgemäß 10 Ergebnisse zurück.

SELECT id, COUNT(field)
FROM [my.dataset]
GROUP BY id
LIMIT 10

Ich verstehe nicht, warum die erste Abfrage einen Fehler zurückgibt und die zweite erfolgreich abgeschlossen wird. Sollten nicht beide Abfragen die gleiche Anzahl von Zeilen zurückgeben?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage