簡體   English   中英

Biqguery table 將數據拆分為tableau中的日期表

[英]Biqguery table splits data into date tables in tableau

我將 bigquery 與 tableau 連接,並且只有一個數據集“ analytics_217037102 ”。但是在 tableau 中,我的數據集被拆分為不同的表,並且每個表中的數據按日期排列。例如 events20201101 作為一個表,20201001 作為第二個表。這里是數據集的圖像和桌子

我不能 select 將所有拆分的表放在一起並將過濾器放在不同的日期。 我可以一次 select 一張表,例如,如果我 select 事件表 20200101,那么我只能看到這張表的圖表和數據,我不能一起看到 Z99938282F0416EF04071859941E18F16EFCF42Z 表 41E8。 此外,表之間沒有任何聯系。 它們在每個表上包含不同的數據,但列和字段類型相同。 幫我把它做成一個數據集,這樣我就可以把 select 所有數據放在一起,並在不同的日期放置過濾器。

這是因為在源代碼中它們確實是不同的表。 您需要將來自它們的數據與自定義 SQL 通過UNION通配符表語法合並,或將數據與 assistant 合並,或通過在 UNION 上創建視圖並將其用作源表。

UPD :如果您在 Tableau 或數據庫視圖中使用UNION選項,則每次將新表添加到源時都需要更新查詢,因此對於頻繁添加的表不利。 對於這種情況,您需要使用通配符表語法的自定義 SQL,它將為您處理新表。 您還可以限制使用_TABLE_SUFFIX列上的where子句訪問的表(例如where _TABLE_SUFFIX between '<low_value>' and '<high_value>'where _TABLE_SUFFIX like '2020%' ),以通過 Tableau 參數限制訪問的表。 但是這個特性使用的是最新表的結果結構,所以在設計上應該考慮。

例子:

select table_schema, table_name, creation_time
from TEST.INFORMATION_SCHEMA.TABLES
+-----+--------------+------------+-----------------------------+
| Row | table_schema | table_name |        creation_time        |
+-----+--------------+------------+-----------------------------+
|   1 | TEST         | TEST_03    | 2020-11-30 14:05:18.440 UTC |
|   2 | TEST         | TEST_02    | 2020-11-30 13:27:24.036 UTC |
+-----+--------------+------------+-----------------------------+

select *
from `TEST.TEST_*`
where _TABLE_SUFFIX = '02'
+-----+------+----+
| Row |  Q   | ID |
+-----+------+----+
|   1 | null |  4 |
|   2 | null |  3 |
+-----+------+----+

select *
from `TEST.TEST_02`
+-----+----+------+------------+-----+----------+
| Row | ID | NAME |     DT     | VAL | NewField |
+-----+----+------+------------+-----+----------+
|   1 |  4 | QWE4 | 2020-02-10 |  40 | null     |
|   2 |  3 | QWE3 | 2020-02-20 |  30 | null     |
+-----+----+------+------------+-----+----------+

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM