Mysql
 sql >> Base de données >  >> RDS >> Mysql

définir une colonne à indexer dans une table mysql garantit-il des recherches O(1) ?

Aucune des recherches dans les moteurs de stockage MyISAM ou InnoDB de MySQL n'est une recherche O(1). Ces moteurs de stockage utilisent B+Trees pour implémenter les index. Le mieux qu'ils puissent faire est O(log2 n) recherches.

La MEMORY Le moteur de stockage utilise un type d'index HASH par défaut, ainsi que le type d'index B+Tree. Seul l'index HASH peut réaliser des recherches O(1).

Le type de données de la colonne indexée ne change rien dans les deux cas.

Pour en savoir plus sur les index MySQL, lisez http://dev. mysql.com/doc/refman/5.1/en/mysql-indexes.html