在Google BigQuery中选择除一些以外的所有列?

wub*_*000 25 google-bigquery

有没有办法选择*除了BigQuery中的[x,y,z列名称]?我看到MySQL的一些解决方案,但不确定它是否适用于BQ.

谢谢.

Mos*_*sky 60

当前的BigQuery SQL方言中没有任何内容可以允许它.但由于这是经常性的请求,我们已添加工作项以支持

SELECT * EXCEPT (a, b, c) FROM ...
Run Code Online (Sandbox Code Playgroud)

更新:此功能现在可在BigQuery标准SQL中使用.有关详细信息,访问https://cloud.google.com/bigquery/sql-reference/enabling-standard-sql 使用公共维基百科表格的示例 - 选择除标题和评论之外的所有列:

select * except(title, comment) from publicdata.samples.wikipedia limit 10
Run Code Online (Sandbox Code Playgroud)

  • 花了一段时间,但它现在可用了.答案已更新. (3认同)

Mik*_*ant 5

除了SELECT * EXCEPT()语法有一个SELECT * REPLACE()语法-都与标准SQL的支持推出
的用法很简单,明显,因为每个文档

不太明显的是,您可以将两者一起使用SELECT,如下例所示

WITH orders AS
  (SELECT 5 as order_id,
  "sprocket" as item_name,
  200 as quantity)
SELECT * EXCEPT (order_id) REPLACE ("widget" AS item_name), "more" as more_fields
FROM orders;
Run Code Online (Sandbox Code Playgroud)