LoslegenKostenlos loslegen

Index-Scans

Dein Freund lebt auf Hawaii, wo der vulkanische Smog sein Asthma verschlimmert. Du hilfst ihm, neue Wohnorte zu recherchieren, und nutzt dafür die Luftqualitätsdaten der Environmental Protection Agency auf County-Ebene. Ihr entscheidet, dass sein neues Zuhause an mindestens 90 % der Tage gute Luftqualität haben sollte.

Du weißt, dass es in den USA viele Countys gibt und die Luftqualitätstabelle groß ist. Deine erste Abfrage (nicht gezeigt) hat einen sequentiellen Scan durchgeführt und lange gebraucht.

Du entscheidest dich, der Spalte, die die Anzahl der Tage mit guter Luftqualität erfasst, einen Index hinzuzufügen. Untersuche den Query-Plan und sieh dir die Art des Scans an.

Diese Übung ist Teil des Kurses

Abfrageleistung in PostgreSQL verbessern

Kurs anzeigen

Anleitung zur Übung

  • Erstelle einen Index für die Tabelle annual_aqi auf der Spalte good.
  • Nimm nur Ergebnisse auf, bei denen good an mindestens 90 % des Jahres vorliegt.
  • Konzentriere dich auf die letzten Jahre, indem du aqi_year auf 2017 und 2018 begrenzt.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

CREATE INDEX good_index 
ON ___(___);

EXPLAIN
SELECT state_name, county_name, aqi_year, good
FROM annual_aqi
WHERE ___ > 327 -- 90% of the year
AND ___ IN (___,___);
Code bearbeiten und ausführen