sql >> Databáze >  >> RDS >> PostgreSQL

Přidání indexu na booleovské pole

Ne, můžete indexovat booleovské pole, pokud podle něj budete filtrovat. To je naprosto rozumná věc, i když stejně jako u všech indexů se PostgreSQL může rozhodnout ignorovat, pokud nevyloučí dostatečné množství tabulky – skenování indexu plus spousta načítání řádků může být dražší než sekvenční skenování – - což vás může nebo nemusí ovlivnit v závislosti na hodnotách v tomto sloupci.

Měli byste si také uvědomit, že PostgreSQL vám umožňuje vkládat podmínky do indexů, což často považuji za užitečné u booleovských polí. (Viz Částečné indexy pro podrobnosti.) Pokud budete v tomto rozsahu běžně filtrovat nebo třídit, může vám nejlépe posloužit něco jako CREATE INDEX ... ON table (some_field) WHERE boolean_field .



  1. Jak najít všechny řádky s hodnotou NULL v libovolném sloupci pomocí PostgreSQL

  2. Jak vytvořit funkci začátku a konce letního času v SQL Server

  3. Problém s MySQL Match

  4. Jak mohou realitní profesionálové používat Microsoft Access