PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Добавяне на индекс към булево поле

Не, можете да индексирате булево поле, ако ще филтрирате по него. Това е напълно разумно нещо, въпреки че както при всички индекси, PostgreSQL може да избере да го игнорира, ако няма да изключи достатъчно от таблицата -- сканиране на индекс плюс много извличане на редове може да бъде по-скъпо от последователно сканиране - - което може или не може да ви повлияе в зависимост от стойностите в тази колона.

Трябва също да сте наясно, че PostgreSQL ви позволява да поставяте условия върху индекси, което често намирам за полезно с булеви полета. (Вижте Частични индекси за подробности.) Ако обикновено филтрирате или сортирате в този обхват, може най-добре да ви помогне нещо като CREATE INDEX ... ON table (some_field) WHERE boolean_field .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Предотвратяване на падаща маса, ако условията не са изпълнени

  2. импортиране на csv файлове на числови типове postgres

  3. Active_support/dependencies.rb:247 `require':не може да зареди такъв файл -- 2.1/pg_ext (LoadError)

  4. Отидете на заявка LIKE на postgresql

  5. избиране на колона въз основа на минимална стойност на друга колона