如何在 BigQuery 中提取两个时间戳之间的唯一天数?

2023-12-07

对于两个不同的时间戳,假设时间戳('2015-02-01')和时间戳('2015-02-12'),我想要一个包含其间所有日期的列。像这样(12行) 2015-02-01 2015-02-02 。 。 。 2015-02-12


您可以通过公共数据集上的交叉联接来做到这一点(fh-bigquery:geocode.numbers_65536)其中您的数字最大为:65536

SELECT date(DATE_ADD(DAY, i, "DAY")) DAY
FROM
  (SELECT '2015-01-01' AS DAY) a CROSS
JOIN
  (SELECT i
   FROM [fh-bigquery:geocode.numbers_65536]
   WHERE i<=abs(DATEDIFF('2015-01-01','2015-01-15'))) b
ORDER BY DAY ASC

这输出:

+-----+------------+---+
| Row |    day     |   |
+-----+------------+---+
|   1 | 2015-01-01 |   |
|   2 | 2015-01-02 |   |
|   3 | 2015-01-03 |   |
|   4 | 2015-01-04 |   |
|   5 | 2015-01-05 |   |
|   6 | 2015-01-06 |   |
|   7 | 2015-01-07 |   |
|   8 | 2015-01-08 |   |
|   9 | 2015-01-09 |   |
|  10 | 2015-01-10 |   |
|  11 | 2015-01-11 |   |
|  12 | 2015-01-12 |   |
|  13 | 2015-01-13 |   |
|  14 | 2015-01-14 |   |
|  15 | 2015-01-15 |   |
+-----+------------+---+

您可以通过添加项目来将此数据添加到 BigQuery 界面中的视图中fh-bigquery使用项目菜单(项目名称旁边的下拉菜单,切换到项目 ➪ 显示项目)。或者,您可以导航到 BigQuery UI 链接https://bigquery.cloud.google.com/project/fh-bigquery添加项目后,示例数据集 (fh-bigquery) 将显示在导航面板中。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 BigQuery 中提取两个时间戳之间的唯一天数? 的相关文章

随机推荐