Voici la liste que vous recherchez Priorité des types de données
Dans vos exemples :
WHERE quantity > '3'
'3' est transtypé en int, correspondant à la quantité
WHERE quantityTest > 3
Aucun casting requis
WHERE date = 20120101
20120101 comme un nombre est coulé à une date trop longue. ex.
select cast(20120101 as datetime)
Ceci est différent de
WHERE date = '20120101'
Où la date sous forme de chaîne peut être lancé.
Si vous descendez d'un tiers de la référence CAST et CONVERT à la section Conversions implicites, il y a un tableau des conversions implicites autorisées. Ce n'est pas parce qu'il est autorisé que cela fonctionnera, comme (20120101 -> datetime).