Dies sollte funktionieren, obwohl ich nicht für seine Effizienz bürgen kann. Per Kommentar ist hier ein Update, das alle Datensätze mit einem Preis zurückzieht, der dem Höchstpreis pro Postleitzahl entspricht.
SELECT *
FROM products p1
WHERE p1.state = 'NJ'
AND p1.price = (select max(price) from products p2
where p1.zip_code = p2.zip_code)
http://www.sqlfiddle.com/#!2/98f6d/2