it-swarm.com.de

Indexiert PostgreSQL Nullwerte?

Wenn ich so einen Tisch habe:

Food
-----------------
name | price | x

Angenommen, ich erstelle einen Index für Name und Preis, aber die Datenbank enthält in einigen Zeilen eine Reihe von Nullwerten für Name und Preis. Überspringt PostgreSQL automatisch die Indizierung dieser Zeilen? Ich habe gehört, dass sich dieses Verhalten in späteren Versionen möglicherweise geändert hat.

4
joslinm

Seit mindestens PostgreSQL 8.3 indiziert PostgreSQL NULL mithilfe einer Bitmap für den Index. Das bedeutet "Ja", es ist indiziert. Nur dass es eher ein bisschen als ein Byte dauert. Es gibt keinen Geschwindigkeitsvorteil, da es sich bei btree-Indizes um die Verwendung eines Nicht -NULL -Werts handelt. Es wird genau so funktionieren, wie Sie es erwarten würden.

Drachen hier: Weitere Informationen finden Sie hier,

3
Evan Carroll