Um longo
VARCHAR é armazenado da mesma maneira que um TEXT /BLOB campo em InnoDB . fonte
A menos que você precise indexar essas colunas (nesse caso
VARCHAR é muito mais rápido) não há razão para usar VARCHAR sobre TEXT para campos longos - existem algumas otimizações específicas do mecanismo em MySQL para ajustar a recuperação de dados de acordo com o comprimento, e você deve usar o tipo de coluna correto para tirar proveito disso. Caso você esteja usando
MyISAM uma discussão aprofundada sobre o tema está aqui . TEXT e BLOB são armazenados fora da mesa com a mesa tendo apenas um ponteiro para o local do armazenamento real. VARCHAR é armazenado em linha com a tabela. VARCHAR é mais rápido quando o tamanho é razoável. De acordo com este teste ,
VARCHAR é cerca de três vezes mais rápido que o texto.