En démontant les performances réelles de la comparaison de chaînes par rapport aux non-flottants, dans ce cas, toute taille non signée et signée n'a pas d'importance. La taille est en fait la vraie différence de performance. Soit 1 octet + (jusqu'à 126 octets) contre 1,2,4 ou 8 octets de comparaison ...évidemment les non flottants sont plus petits que les chaînes et les flottants, et donc plus conviviaux pour le CPU dans l'assemblage.
La comparaison de chaîne à chaîne dans tous les langues est plus lente que quelque chose qui peut être comparé en 1 instruction par la CPU. Même la comparaison de 8 octets (64 bits) sur un processeur 32 bits est toujours plus rapide qu'avec un VARCHAR (2) ou plus. * Encore une fois, regardez l'assemblage produit (même à la main) il faut plus d'instructions pour comparer char par char que 1 à 8 octets CPU numérique.
Maintenant, combien plus vite? dépend également du volume de données. Si vous comparez simplement 5 à 'audi' - et c'est tout ce que votre DB a, la différence qui en résulte est si minime que vous ne la verrez jamais. En fonction du CPU, de l'implémentation (client/serveur, web/script, etc.), vous ne le verrez probablement pas tant que vous n'aurez pas effectué quelques centaines de comparaisons sur le serveur DB (peut-être même quelques milliers de comparaisons).
- Pour annuler le conflit incorrect concernant les comparaisons de hachage. La plupart des algorithmes de hachage eux-mêmes sont lents, donc vous ne bénéficiez pas de choses comme CRC64 et plus petit. Pendant plus de 12 ans, j'ai développé des algorithmes de recherche pour les moteurs de recherche multi-comté et 7 ans pour les bureaux de crédit. Tout ce que vous pouvez garder en numérique le plus rapidement ... par exemple les numéros de téléphone, les codes postaux, même la monnaie * 1000 (stockage) la devise div 1000 (récupération) est plus rapide que DECIMAL pour les comparaisons.
Ozz
Merci pour toutes vos réponses et informations supplémentaires. Vous avez prouvé ma suspicion et facilité mon choix. – googletorp