## Beispiel: SELECT-Anweisung

In der Tabelle ADDRESS ist die Spalte CITY als Primärschlüssel definiert. Ein Benutzer hat die folgende SELECT-Anweisung eingegeben:

SELECT * FROM address WHERE city = 'Athens'

Das Datenbanksystem sucht in der Tabelle ADDRESS nach dem Datensatz, der den Wert Athens in der Spalte CITY hat.

...

1. Das Datenbanksystem beginnt die Suche auf der Wurzelebene des B*-Baums. Es vergleicht den gesuchten Wert Athens mit dem Wert des ersten Separators in der Wurzelseite, Baf.

Weil der Wert Athens niedriger ist als Baf, setzt das Datenbanksystem die Suche auf der ersten Indexseite der B*-Baum-Indexebene fort.

2. Der erste Separator An auf der ersten Indexseite der B*-Baum-Indexebene ist niedriger als der Wert Athens. Das Datenbanksystem wertet deshalb den nächsten Separator Au in der Indexseite aus.

Weil der Wert Au höher ist als der Wert Athens, wertet das Datenbanksystem die Adressinformationen nach dem Separator An aus, um auf die richtige Blattseite auf der Blattebene zu gelangen.

3. Um die Adressinformation des Datensatzes mit dem Schlüsselwert Athens zu finden, verwendet das Datenbanksystem einen binären Suchalgorithmus.

Das Datenbanksystem durchsucht die Datensätze in der Blattseite, bis es den gesuchten Datensatz gefunden hat. Die Suche ist hiermit abgeschlossen.

Siehe auch:

Logische Zugriffsstrukturen