google-bigquery - 使用 BigQuery SELECT * EXCEPT (),使用字符串匹配选择要包含在 EXCEPT () 中的列名
问题描述
为冗长的标题道歉。我正在尝试使用 BigQuery 的SELECT * EXCEPT()
语法从我的表中删除大量列。这些列的列名中都有相似的字符串,如果我可以在列名的这个相关部分进行字符串/模式匹配以选择/删除这些列,那就太好了。作为一个小例子,假设我们有下表:
WITH
my_table AS (
SELECT 'nick' as name, 24 as age, 'blue' as color, 7 as num_1, 11 as num_2, 13 as num_3
UNION ALL SELECT 'joey' as name, 23 as age, 'blue' as color, 8 as num_1, 13 as num_2, 18 as num_3
)
SELECT * EXCEPT (num_1, num_2, num_3) FROM my_table
上述方法适用于删除少量列,在本例中为 3,但是如果我可以执行以下操作会很棒:
SELECT * EXCEPT (contains "num_") FROM my_table
...这利用了我想删除num_
作为列名一部分包含的所有列的事实。目前有没有办法做到这一点?
非常感谢您对此的任何帮助,因为这将是一个很棒的功能/能力。
解决方案
推荐阅读
- spring-boot - 在 Heroku 上部署后的 Websockets
- tensorflow - NLP 中计算 dp sgd 隐私的样本数量是多少?
- python - 是否只允许用户将整数放入条目中
- python - 用 Selenium python 读取网站的一部分很热
- reactjs - 如何显示/隐藏通过反应动态呈现的数据数组中的一个元素
- google-colaboratory - 在 google colaboratory 中导入 caffe
- flutter - 从 ListView 中的实例调用 setState
- python - 如何从数据框中删除行头
- python - 401 客户端错误:未经授权的 url:https://storage.scrapinghub.com/collections
- linux - cmake install() 行为?如果给出此指令,为什么二进制会在 PWD 中查找