CTE vs View vs Temp Table in BigQuery: How to Choose