title: PyPika how to select star minus a column
body: <p>I'm trying to use PyPika to build a select statement. Both tables have an <code>id</code> column, and I'm trying to select all columns from both tables except the <code>id</code> column from the first table.</p>
  <p>This is the query I want to end up with, which runs properly in BigQuery:</p>
  <p><code>SELECT t.* EXCEPT(id), s.* from t join s on t.id = s.id</code></p>
  <p>I haven't been able to figure out how to get the <code>EXCEPT</code> into the select clause.</p>
  <p>I've tried the following syntax, but the <code>except_of()</code> isn't allowed in this context:</p>
  <pre><code>t = Table(&quot;t&quot;)
  s = Table(&quot;s&quot;)
  query = Query.from_(t).join(s).on(t.id == s.id).select(t.star.except_of(&quot;id&quot;)).select(s.star)
  </code></pre>
  <p>I also tried a custom function, but that puts an invalid comma in the resulting query. This is what I tried:</p>
  <pre><code>except_select = CustomFunction(&quot;EXCEPT&quot;, [&quot;column_to_exclude&quot;])
  query = Query.from_(t).join(s).on(t.id == s.id).select(t.star).except_select(&quot;id&quot;)).select(s.star)
  </code></pre>
  <p>which incorrectly generates</p>
  <p><code>SELECT t.*, EXCEPT(id), s.* from t join s on t.id = s.id</code></p>
  <p>Does anyone have any suggestions on how to solve this problem?</p>