sql >> Database >  >> RDS >> Mysql

Creëert een UNIEKE constraint automatisch een INDEX op het/de veld(en)?

Een unieke sleutel is een speciaal geval van index, die zich gedraagt ​​als een gewone index met extra controle op uniciteit. Met behulp van SHOW INDEXES FROM customer u kunt zien dat uw unieke sleutels in feite indexen van het B-tree-type zijn.

Een samengestelde index op (email, user_id) is genoeg, je hebt geen aparte index nodig voor alleen e-mail - MySQL kan de meest linkse delen van een samengestelde index gebruiken. Er kunnen enkele grensgevallen zijn waarbij de grootte van een index uw zoekopdrachten kan vertragen, maar u hoeft zich er geen zorgen over te maken totdat u ze daadwerkelijk tegenkomt.

Wat betreft het testen van het indexgebruik moet u eerst uw tabel vullen met wat gegevens om de optimizer te laten denken dat het echt de moeite waard is om die index te gebruiken.




  1. Hoe tel je alle rijen bij gebruik van SELECT met LIMIT in MySQL-query?

  2. dpkg:fout bij verwerking van pakket mysql-server (afhankelijkheidsproblemen)?

  3. Hoe NULLIF() werkt in SQL Server

  4. SQL gesplitste door komma's gescheiden rij