你们一起写的很好,没问题。不过,对于这个特定的查询,仍然可以使用标准SQL,对吗?谷歌内部的团队也会发生同样的事情,他们在迁移到标准SQL时混合使用传统SQL和标准SQL。遗憾的是,我的组织仍然使用传统SQL,但感谢您的回答!我正在阅读标准SQL文档,以了

你们一起写的很好,没问题。不过,对于这个特定的查询,仍然可以使用标准SQL,对吗?谷歌内部的团队也会发生同样的事情,他们在迁移到标准SQL时混合使用传统SQL和标准SQL。遗憾的是,我的组织仍然使用传统SQL,但感谢您的回答!我正在阅读标准SQL文档,以了,sql,google-bigquery,Sql,Google Bigquery,你们一起写的很好,没问题。不过,对于这个特定的查询,仍然可以使用标准SQL,对吗?谷歌内部的团队也会发生同样的事情,他们在迁移到标准SQL时混合使用传统SQL和标准SQL。遗憾的是,我的组织仍然使用传统SQL,但感谢您的回答!我正在阅读标准SQL文档,以了解您编写的所有内容是如何协同工作的。当然,没问题。不过,对于这个特定的查询,仍然可以使用标准SQL,对吗?同样的事情也发生在谷歌内部的团队身上,他们在迁移到标准SQL时混合使用传统SQL和标准SQL。 SELECT STRFTIME_U


你们一起写的很好,没问题。不过,对于这个特定的查询,仍然可以使用标准SQL,对吗?谷歌内部的团队也会发生同样的事情,他们在迁移到标准SQL时混合使用传统SQL和标准SQL。遗憾的是,我的组织仍然使用传统SQL,但感谢您的回答!我正在阅读标准SQL文档,以了解您编写的所有内容是如何协同工作的。当然,没问题。不过,对于这个特定的查询,仍然可以使用标准SQL,对吗?同样的事情也发生在谷歌内部的团队身上,他们在迁移到标准SQL时混合使用传统SQL和标准SQL。
SELECT 
   STRFTIME_UTC_USEC(UTC_USEC_TO_day((ts-25200000)*1000),"%Y-%m-%d") AS day,
   products.id as product, 
   count(products.id) as num_entries
FROM 
   TABLE_DATE_RANGE([table_name_], timestamp('20170801'), timestamp(current_date()))
GROUP BY day, product
ORDER BY day, num_entries desc
2017-08-01 . product A . 10
2017-08-01 . product B . 8
2017-08-01 . product C . 4
2017-08-01 . product D . 2
2017-08-02 . product X . 18
2017-08-02 . product Y . 15
2017-08-02 . product Z . 11
2017-08-03 . product N . 20
2017-08-03 . product M . 12
2017-08-03 . product N . 5
2017-08-03 . product O . 3
...
2017-08-01 . product A . 10
2017-08-02 . product X . 18
2017-08-03 . product N . 20
...
#standardSQL
WITH ProductCounts AS (
  SELECT
    PARSE_DATE('%Y%m%d', _TABLE_SUFFIX) AS date,
    products.id AS product,
    COUNT(*) AS num_entries
  FROM `your_table_*`
  WHERE _TABLE_SUFFIX >= '20170801'
  GROUP BY date, product
)
SELECT
  date,
  ARRAY_AGG(product ORDER BY num_entries DESC LIMIT 1)[OFFSET(0)] AS top_product
FROM ProductCounts
GROUP BY date;