sql >> Databasteknik >  >> RDS >> Mysql

Varför och var man ska använda INDEX - för- och nackdelar

Tja, du kan förmodligen fylla i böcker om index, men här är kortfattat några saker att tänka på när du skapar ett index:

Även om det (för det mesta) snabbar upp ett urval, saktar det ned infogning, uppdatering och borttagning eftersom databasmotorn inte bara behöver skriva data, utan även indexet. Ett index behöver utrymme på hårddisken (och mycket viktigare) i RAM. Ett index som inte kan hållas i RAM är ganska värdelöst. Ett index på en kolumn med bara ett fåtal olika värden snabbar inte upp urval, eftersom det inte kan sortera ut många rader (till exempel en kolumn "kön", vilket vanligtvis har bara två olika värden - manlig, kvinnlig).

Om du till exempel använder MySQL kan du kontrollera om motorn använder ett index genom att lägga till "explain" före markeringen - för ditt exempel ovan EXPLAIN SELECT TestField FROM Example WHERE username=XXXX



  1. Få kortdagsnamnet i PostgreSQL

  2. pyodbc.connect() fungerar, men inte sqlalchemy.create_engine().connect()

  3. while ($row =mysql_fetch_array($result)) - hur många loopar utförs?

  4. Formatera SQL-tabelldata som texttabell