BigQuery select * except two columns
<p>I would like to select everything from the public BigQuery github_repos dataset except from two records: author.name <strong>AND</strong> difference.old_mode. Based on a similar question I asked, I think I want to run a query similar to</p>

<pre><code>#standardSQL
SELECT * REPLACE ((SELECT AS STRUCT author.* EXCEPT (name)) AS author), 
REPLACE ((SELECT AS STRUCT difference.* EXCEPT (old_mode)) AS difference)
FROM `bigquery-public-data.github_repos.commits`
LIMIT 1000;
</code></pre>

<p>If I run the author exclusion, it works well:</p>

<pre><code>#standardSQL
SELECT * REPLACE ((SELECT AS STRUCT author.* EXCEPT (name)) AS author)
FROM `bigquery-public-data.github_repos.commits`
LIMIT 1000;
</code></pre>

<p>However, the difference exclusion has an error:</p>

<pre><code>#standardSQL
SELECT * REPLACE ((SELECT AS STRUCT difference.* EXCEPT (old_mode)) AS difference)
FROM `bigquery-public-data.github_repos.commits`
LIMIT 1000;
</code></pre>

<p>Error: </p>

<pre><code>Dot-star is not supported for type ARRAY&lt;STRUCT&lt;old_mode INT64, new_mode INT64, old_path STRING, ...&gt;&gt; at [2:41]
</code></pre>

<p>Thank you.</p>

<p><strong>Update</strong>
Not a duplicate of <a href="https://stackoverflow.com/questions/729197/sql-exclude-a-column-using-select-except-columna-from-tablea">SQL server</a> question.</p>