Write SQL query to solve given problem: What is the difference in the number of cities with P.O. box only and cities with Post Office among the cities with area code 787?. Keep the solution inside sql tag ```sql [SQL-Query] ```
SELECT COUNT(CASE WHEN T2.type = 'P.O. Box Only' THEN 1 ELSE NULL END) - COUNT(CASE WHEN T2.type = 'Post Office' THEN 1 ELSE NULL END) AS DIFFERENCE FROM area_code AS T1 INNER JOIN zip_data AS T2 ON T1.zip_code = T2.zip_code WHERE T1.area_code = 787