La première requête doit utiliser SQL_NO_CACHE pour dire à MySQL de ne pas mettre le résultat dans le cache. La deuxième requête utilise le cache et indique à MySQL de ne pas mettre en cache le résultat de cette requête, ce qui ne fait rien.
tl;dr - Inversez vos requêtes.