Interviewfrage für Data Analyst

Wie berechnest du in SQL das Wachstum von Monat zu Monat?

Worauf der Interviewer abzielt, wie du deine Antwort aufbaust und ein gesprochenes Beispiel zum Anpassen.

Kurzantwort

Aggregiere auf eine Zeile pro Monat, hol dir mit LAG über die sortierten Monate den Wert des Vormonats und rechne (aktuell minus vorher) geteilt durch vorher. Sichere die Division durch null mit NULLIF ab. Das Detail, das zählt, ist eine vollständige Datumsschiene, auf die du joinst, damit ein Monat ohne Aktivität als null erscheint, statt zu verschwinden und den Vergleich eine Periode überspringen zu lassen.

Warum Interviewer das fragen

Das ist ein praktischer Test, der Aggregation, Window Functions und ein Gespür für fehlende Daten kombiniert. Die Datumsschiene ist der Unterscheider: Wer echtes Reporting ausgeliefert hat, weiß, dass Lücken in den Daten den Vergleich still verschieben, während jemand mit reiner Übungserfahrung eine Query schreibt, die auf vollständigen Daten korrekt aussieht.

So baust du deine Antwort auf

  • Aggregiere zuerst auf die Monatsgranularität.
  • Nutz LAG sortiert nach Monat, um den Vorwert zu holen.
  • Rechne die prozentuale Veränderung und sichere den Nenner ab.
  • Joine auf eine erzeugte Datumsschiene, damit leere Monate trotzdem auftauchen.
  • Erwähne Saisonalität als Vorbehalt bei der Interpretation der Zahl.

Beispielantwort

Gesprochenes Beispiel, erste Person

Ich aggregiere auf eine Zeile pro Monat, nehme dann LAG auf die Metrik sortiert nach Monat und rechne die Veränderung gegenüber dem Vorwert, wobei ich den Nenner in NULLIF packe, damit ein Nullmonat mir die Query nicht zerlegt. Was ich immer ergänze, ist eine Datumsschiene. Wenn der März überhaupt keine Bestellungen hatte, existiert diese Zeile im Aggregat schlicht nicht, also greift das LAG im April zurück auf den Februar und meldet Wachstum über die falsche Periode, ohne jede Fehlermeldung. Also erzeuge ich eine vollständige Monatsliste, joine das Aggregat per Left Join darauf und coalesce die NULLs auf null. Ich weise beim Übergeben außerdem auf das Interpretationsrisiko hin. Monat über Monat ist bei einem Geschäft mit starker Saisonalität verrauscht, und dass der Februar kürzer ist als der Januar, lässt fast alles wie einen Rückgang aussehen. Wenn die Zielgruppe darauf Entscheidungen trifft, zeige ich meistens Jahr über Jahr daneben oder normalisiere auf Tage im Monat, und sage das auch dazu.

Steht dieses Vorstellungsgespräch bald an? GhostPilot hört bei deinem Live-Call mit, erkennt die Frage in dem Moment, in dem sie gestellt wird, und bringt dir eine strukturierte Antwort in Echtzeit auf den Bildschirm. Probier es im nächsten Mock aus, oder hol dir einen $29 Session Pass, kein Abo, für den Ernstfall.

So funktioniert es

Nachfragen, mit denen du rechnen solltest

  • Wie baust du eine Datumsschiene in deinem Warehouse?
  • Warum kann Jahr über Jahr ehrlicher sein als Monat über Monat?
  • Wie gehst du mit einer Metrik um, die legitim null sein kann?

Weitere Fragen für Data Analyst

Dein Interviewer stellt seine eigene Version davon. Kopier deine echte Stellenbeschreibung in den kostenlosen Question Predictor und bekomm die 20 Fragen, die diese Rolle am wahrscheinlichsten stellt, samt dem, worauf jede wirklich abzielt.

Meine Fragen vorhersagen

Üb die harten Fragen, bevor sie gestellt werden

Trainier mit einem Live-Copiloten und geh dann vorbereitet rein. Ein $29 Session Pass bringt dich durch das Vorstellungsgespräch, ohne Abo und ohne Bindung.

GhostPilot holen