Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Otimize a consulta mysql para usar o índice em uma cláusula Bitwise where


Eu não acredito que o MySQL possa ser feito para usar índices para operações bit a bit.

Há alguma discussão sobre isso no fórum MySQL Performance:http://forums.mysql. com/read.php?24,35318 ("As varreduras de índice são possíveis com comparação bit a bit?"), onde um funcionário do MySQL sugere uma solução baseada em ter uma tabela com uma linha por par (coisa, bit definido) e fazer várias junções. Eu acho que o quão bem isso funciona dependerá muito do seu aplicativo específico.

De acordo com http://dev.mysql.com/tech -resources/articles/mysql-set-datatype.html índices não servem para fazer o mesmo tipo de operações em SET valores (que são implementados com inteiros e operações bit a bit). Eu teria pensado que, se houvesse alguma otimização de índice inteligente para operações bit a bit, ela já teria sido aplicada a SET s.