列出所有表和字段Google BigQuery

时间:2018-09-17 22:25:55

标签: sql google-bigquery

我是否可以在Google BigQuery的Web UI中使用一个SQL查询,该查询将返回数据库中所有表和字段/架构的列表?到目前为止,我只能找到一个“ TABLES_SUMMARY ”命令,但这并没有给我有关字段/模式的任何信息。我不想单击每个表来查看其中的内容。

3 个答案:

答案 0 :(得分:1)

BigQuery提供了对INFORMATION_SCHEMA views的支持,在撰写本文时,它仍处于测试阶段。如果要获取多个表的架构,则可以查询COLUMNS view,例如:

SELECT table_name, column_name, data_type
FROM `bigquery-public-data`.stackoverflow.INFORMATION_SCHEMA.COLUMNS
ORDER BY table_name, ordinal_position

这将返回:

Row table_name  column_name         data_type   
1   badges      id                  INT64
2   badges      name                STRING
3   badges      date                TIMESTAMP
4   badges      user_id             INT64
5   badges      class               INT64
6   badges      tag_based           BOOL
7   comments    id                  INT64
8   comments    text                STRING
9   comments    creation_date       TIMESTAMP
10  comments    post_id             INT64
11  comments    user_id             INT64
12  comments    user_display_name   STRING
13  comments    score               INT64
...

答案 1 :(得分:0)

您可以在下面的查询中尝试

选择* 来自[数据库名称] .INFORMATION_SCHEMA.COLUMNS 按TABLE_NAME订购

答案 2 :(得分:0)

有人发布了一种解决方法here

根据您拥有的列数,您可以轻松进行类似的操作