sql >> Databasteknik >  >> RDS >> Mysql

mysql binär jämförelse använder inte index

MySQL använder sammanställningen av kolumnen för indexet. Ett index med en icke-binär sortering är inte användbart för en binär uppslagning eftersom ordningen kan vara annorlunda.

Du kan ändra själva kolumnen till binär sortering:

ALTER TABLE YourTable MODIFY
   YourColumn VARCHAR(4)
   CHARACTER SET latin1
   COLLATE latin1_bin;

Då skulle indexet vara användbart för en binär uppslagning.



  1. Boolean vs tinyint(1) för booleska värden i MySQL

  2. Uppföljare:Sammanfogade fält i WHERE LIKE-satsen

  3. Glömt lösenordsskript PHP mysqli

  4. Varför tar Microsoft SQL Server 2012-frågan några minuter över JDBC 4.0 men sekund(er) i Management Studio?