日期和时间

您可以使用数据洞察在图表和图形中直观呈现和比较日期和时间,并允许用户调整报告的日期范围。您还可以在计算字段中使用日期函数来处理和转换日期及时间数据。

日期和时间数据类型

数据洞察支持以下日历日期和时间数据类型:

类型 示例数据
日期 2020 年 9 月 15 日
日期和时间 2020 年 9 月 15 日下午 6:10:59:59
2020 年
年份季度 2020 年第 3 季度
年月 2020 年 9 月
ISO 年份星期 2020 年 9 月 14 日至 2020 年 9 月 20 日(第 38 周)
日期时段 2020 年 9 月 15 日下午 6 点
日期时点分钟 2020 年 9 月 15 日下午 6:10
季度 Q3
9 月
ISO 周数 第 35 周
月日 9 月 15 日
周几 星期二
日期 23
小时 下午 6 点
分钟 52

日期和时间(兼容模式)

在 2020 年 9 月 15 日之前创建的数据源中的日期和时间维度使用“日期和时间(兼容模式)”数据类型。兼容模式日期会在名称中包含格式或示例。

了解如何升级兼容模式日期

“修改连接”面板上的“兼容模式日期和时间类型”选项包括“年 (YYYY)”“年季度 (YYYYQ)”和“年月 (YYYYM)”等时间范围。 在图表中修改字段时,兼容模式日期同时具有 [**格式类型**](/data-studio/format-fields-in-reports)和 **粒度** 选项。如需调整图表的日期分组,请使用 **粒度** 选项。 #### 升级兼容模式日期字段 兼容模式日期在现有组件和计算字段中仍可正常使用。不过,您无法将兼容模式日期与所有可用的日期和时间函数搭配使用。如需使用这些函数,您可以将日期字段升级为新的“日期”或“日期和时间”数据类型。 **如需升级,请执行以下操作:** 1. [登录数据洞察](https://datastudio.google.com)。 2. [修改数据源](/data-studio/edit-a-data-source)。 3. 找到要转换的兼容模式日期字段。 4. 点击相应字段的 **类型** 菜单,然后选择 **日期和时间**。 5. 选择日期类型。 6. 在随即显示的对话框中,点击 **升级**。 > 由于升级可能会影响报告,因此您必须单独升级日期和时间字段。重新连接数据源不会升级字段。 以下连接器不支持新的“日期”和“日期和时间”数据类型,因此您无法在通过这些连接器连接的数据源中升级到或创建这些类型: - Cloud Spanner - YouTube 数据分析 - 使用旧版 SQL 的 BigQuery

在图表中使用日期和时间

您可以按不同的日期粒度级别对图表中的数据进行分组(汇总),以与数据字段中的数据类型相对应。

例如,向图表中添加日期字段后,系统会按年、月和日对数据进行分组。若要按月对数据进行分组,您可以将数据类型更改为月份,也可以使用数据源中数据类型为月份的字段。

两个时序图表:一个图表显示按日期分组的指标,另一个图表显示按月份分组的指标。

  1. 显示按完整日期划分的指标的图表。
  2. 显示按月划分的指标的图表。

更改字段的数据类型

您可以在图表中或直接从数据源中更改字段的数据类型:

  • 如果您在数据源中更改字段的数据类型,则新数据类型会应用于使用该字段的所有位置。这可能会限制您在图表中如何使用该字段。
  • 如果您在图表中更改字段的数据类型,则新数据类型仅应用于相应图表中的该字段。

如需在字段的所有使用位置更改字段的数据源,请在数据源中选择字段的类型菜单:

用户在“修改连接”面板上选择“日期”维度“类型”下拉菜单,以显示“日期”维度的可用“日期和时间”时间范围选项。

如需仅在单个图表中更改某个字段的数据源,请在报告的设置标签页中点击该字段的修改图标:

用户在表格图表的“设置”标签页上选择“日期”维度字段类型图标,以显示“日期”维度的可用“日期和时间”时间段选项。

在计算字段中使用日期和时间

您可以在计算字段中使用函数,以在数据源中或直接在报告的组件中创建新的日期和时间数据列。

例如,您可以使用 DATE 函数从单独的数字日期、月份和年份字段构建完整的日期。您可以使用 YEARDAYHOUR 等函数从日期中提取日期和时间部分。您可以使用 DATETIME_DIFF 计算两个日期之间的差值,也可以使用 DATETIME_ADD 添加特定数量的时间部分。

详细了解日期和时间函数

日期和日期与时间字面量

如需在计算字段中使用字面日期和时间值,您可以在值前面加上适当的标记:

字面量 规范数据格式
DATE 'YYYY-\[M\]M-\[D\]D'
DATETIME 'YYYY-\[M\]M-\[D\]D \[\[H\]H:\[M\]M:\[S\]S\]'

示例:

计算数据中的日期与特定固定日期之间的差值:

DATETIME_DIFF(date_field, DATE "2008-12-25", DAY)

将日期格式化为文本:

FORMAT_DATETIME("%x", DATE "2008-12-25")