什么是Google BigQuery的字符串" t0"意思?

时间:2016-11-11 15:09:00

标签: google-bigquery

我试图了解GoogleBigQuery,并且我在查询中看到了这一点:AS t0

我还看到t0附加了一些指标或维度,如t0.postId

以下是我试图理解的完整查询:

SELECT t0.Author, COUNT(DISTINCT t0.postId, 50000) AS t0.calc_FPB538 FROM (SELECT
  MAX(IF (hits.customDimensions.index = 10, hits.customDimensions.value,  NULL)) WITHIN RECORD AS postId,
  date(MAX(IF (hits.customDimensions.index = 4, hits.customDimensions.value,  NULL))) WITHIN RECORD AS Datepublished,
  MAX(IF (hits.customDimensions.index = 1, hits.customDimensions.value,  NULL)) WITHIN RECORD AS Country,
  MAX(IF (hits.customDimensions.index = 7, hits.customDimensions.value,  NULL)) WITHIN RECORD AS Author,
FROM
  [My_data.ga_sessions_20161104]) AS t0 WHERE (STRFTIME_UTC_USEC(TIMESTAMP_TO_USEC(TIMESTAMP(STRING(t0.Datepublished))), '%Y%m%d') >= '20161102' AND STRFTIME_UTC_USEC(TIMESTAMP_TO_USEC(TIMESTAMP(STRING(t0.Datepublished))), '%Y%m%d') <= '20161108') GROUP EACH BY t0.Author ORDER BY t0.calc_FPB538 DESC

这是什么意思,我应该如何使用它?

感谢。

1 个答案:

答案 0 :(得分:2)

我认为你真的需要找到关于基本sql /查询术语和方法的教程,但总的来说(当我看到这样的语法时,我会使用像对象一样的通用术语,无论表是否适用) :

[My_data.ga_sessions_20161104]) AS t0 

你说看看这个对象/表[My_data.ga_session_20161104]并给它一个标签t0所以我可以引用该对象上的列/数据点。然后,当您稍后看到诸如t0.postId之类的内容时,您知道您正在引用[My_data.ga_sessions_20161104]。这样,如果您引用另一个具有postId数据点/列的类似表,那么您和运行查询的引擎都知道您正在谈论的内容。

您还可以使用COUNT(DISTINCT t0.postId, 50000) AS t0.calc_FPB538在查询中看到标记列/数据点,这就是说对postId结果的数量进行计数并将其标记为t0.calc_FPB538,因为我我希望稍后引用它(或者你只是喜欢你的resutls有特定的名字)。