Among the establishments with a postal code of 94102, how many establishments have a score of 90 or more in 2015?
establishment has the same meaning as business; score of 90 or more refers to score ≥ 90; year(date) = 2015;
SELECT COUNT(DISTINCT T2.business_id) FROM violations AS T1 INNER JOIN businesses AS T2 ON T1.business_id = T2.business_id INNER JOIN inspections AS T3 ON T2.business_id = T3.business_id WHERE STRFTIME('%Y', T1.`date`) = '2015' AND T2.postal_code = '94102' AND T3.score > 90