C'est un problème connu concernant la soustraction d'entiers non signés .
La soustraction entre des valeurs entières, dont une est de type UNSIGNED, produit un résultat non signé par défaut. Si le résultat aurait autrement été négatif, il devient la valeur entière maximale. Si le NO_UNSIGNED_SUBTRACTION
Le mode SQL est activé, le résultat est négatif.
Référence :Types numériques