En termes de performance, ce qui sera plus rapide, utilisez un BIT(1) NULL
(null = inconnu, 0 = masculin, 1 = féminin) ou ENUM('unknown', 'male', 'female') NOT NULL DEFAULT 'unknown'
dans MySQL MyISAM?BIT (1) vs ENUM ('inconnu', 'masculin', 'féminin') dans MySQL
Ou est-ce considéré comme micro-optimisation?
[EDIT]
Je pense que je vais utiliser ENUM('male', 'female') DEFAULT NULL
Micro-optimisation. Choisissez ce qui est plus significatif/sémantiquement correct. – delnan
Plus rapide en termes de performances pour quoi faire? Insérer des millions de lignes de données? Interroger pour tous les utilisateurs d'un genre particulier? Autre chose? –
Null ne signifie pas exactement "unknown" et cela peut causer des problèmes avec vos requêtes SQL. Tout d'abord, traiter avec null signifie une syntaxe supplémentaire farfelue que vous pouvez éviter. Deuxièmement, il y a l'illogique drôle de l'informatique avec null, où nul par rapport à tout est nul. Et si un eunich arrive? – Ian