MYSQL: varchar vs int pour stocker une variable

Pour des raisons de lisibilité, je voudrais stocker une variable de type varchar comme "dans", "", "auto" au lieu d'un int comme "0", "1", "2". Existe-il des raisons pourquoi je ne devrais pas le stocker en tant que varchar?

La raison pour laquelle je demande, c'est que j'ai entendu dire que l'int est plus rapide, mais cela s'applique dans ce scénario ou la différence de vitesse d'être si petit qu'il est négligeable?

Je suis tout à fait nouveau pour MYSQL, donc s'il vous plaît laissez-moi savoir si vous avez besoin de plus d'informations, j'ai cherché, pour de semblables questions/réponses, mais n'ai pas trouvé de réponse à ma question.

vous pouvez utiliser enum trop. Beaucoup diront que smallint 1 est idéal pour cela, mais à moins que vous envisagez de migrer vers quelques autres db, vous devez être bien avec enum ou varchar. Peu probable que vous remarquerez un décalage
Je pense que vous avez répondu vous-même, quand faut-il faire une différence. Cela dépend de combien grande est ur la base de données
Juste à carillon, la différence de vitesse ne sera probablement pas le même registre. C'est moins que négligeable, parce que c'est probablement moins que le quantum de la longueur de la CPU, de sorte qu'il ne va pas prendre des cycles à l'écart des autres processus, y compris lui-même.
À quel point pensez-vous que cela ferait une différence? E. g. si j'ai dû trier 100 colonnes qui contiennent "" au lieu de chercher à "0" y aurait-il beaucoup de différence? Ou aurait-il à 1000, 10000, etc pour être perceptible?

OriginalL'auteur joshhunt | 2014-05-09