Une solution similaire à celle de Patrick Hofman est de déplacer la logique dans le HAVING
clause
SELECT truck
FROM table
GROUP BY truck
HAVING COUNT(DISTINCT location) = 2
AND SUM(CASE WHEN location IN (1, 2) THEN 0 ELSE 1 END) = 0
La première condition renvoie le camion avec seulement deux emplacements distincts, sans vérifier leurs valeurs, la deuxième condition force ces emplacements à être 1 et 2