Selon Priorité des opérateurs pour MySQL
AND
a une priorité plus élevée que OR
.
DoncC1 AND C2 OR C3
sera traité comme (C1 AND C2) OR C3
Pour remplacer la priorité par défaut, vous devez utiliser des parenthèses comme :C1 AND (C2 OR C3)
Dans votre cas, la bonne requête est :
SELECT name, sex, fur, color
FROM dogs
WHERE sex='male' AND fur='short' AND (color='black' OR size="big");