Unterschiede zwischen Bereichen und Filtern

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Datensatzmenge durch Angabe eines Bereichs begrenzen


Sowohl Bereichsdefinitionen als auch Filter beschränken die sichtbaren Datensätze auf eine Teilmenge der verfügbaren Datensätze, verwenden aber dazu unterschiedliche Vorgehensweisen. Ein Bereich ist eine Menge fortlaufend indizierter Datensätze, die innerhalb eines vorgegebenen Wertebereichs liegen. Beispiel: In der Datenbank Employee, deren Datensätze anhand des Nachnamens indiziert sind, könnten Sie einen Bereich definieren, in dem alle Angestellten enthalten sind, deren Namen zwischen "Jones" und "Smith" liegen. Da Bereiche auf Indizes basieren, müssen Sie den aktuellen Index so setzen, dass er für die Definition des Bereichs verwendet werden kann. Wie beim Festlegen eines Index zum Sortieren von Datensätzen können Sie den Index über eine der Eigenschaften IndexName oder IndexFieldNames definieren.

Ein Filter dagegen ist eine beliebige Menge von Datensätzen, in denen bestimmte Daten übereinstimmen, unabhängig von der Indizierung. Beispielsweise könnten Sie eine Datenbank mit Arbeitnehmerdaten so filtern, dass alle Arbeitnehmer angezeigt werden, die in Kalifornien leben und mindestens fünf Jahre für die Firma tätig sind. Obwohl Filter Indizes verwenden können, falls sie zugeordnet sind, sind sie keine Voraussetzung. Filter werden auf einzelne Datensätze anwendet, während eine Anwendung die Datenmenge durchläuft.

Im allgemeinen sind Filter flexibler als Bereiche. Bereiche können jedoch effizienter sein, wenn sehr große Datenmengen vorliegen und die gesuchten Datensätze bereits in fortlaufenden indizierten Gruppen angeordnet sind. Bei sehr umfangreichen Datenmengen ist es noch sinnvoller, eine WHERE-Klausel einer Abfrage-Datenmenge zur Auswahl der Daten zu verwenden. Das Definieren einer Abfrage ist im Abschnitt Abfrage-Datenmengen beschrieben.

Siehe auch