Una soluzione simile a quella di Patrick Hofman è spostare la logica nel HAVING
clausola
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 prima condizione restituisce il camion con solo due posizioni distinte, non verificandone i valori, la seconda condizione obbliga quelle posizioni a essere 1 e 2