why there is no performance differences if I use where clause inside of inner join?
BigQuery reduces how much data is scanned in a couple scenarios:


You have a partitioned table, and you filter on the partitioning column.
You have a clustered table, and you filter on one of the columns used for clustering.


For other types of filters, however, such as if you don't partition or cluster a table, you will incur the cost of scanning the entire table. See the query pricing documentation for more information.