跳到内容

创建和使用数据集

上次更新时间: 二月 13, 2025

除非另有说明,否则适用于以下任何订阅

营销 Hub   Professional
销售 Hub   Professional
Service Hub   Professional
Operations Hub   Professional , Enterprise
内容 Hub   Professional

数据集是整个 HubSpot 账户的数据集合,可用于自定义报告。数据集可以包括 CRM 对象和 HubSpot 资产的属性,以及根据需要计算数据的公式。例如,你可以创建一个字段,根据交易金额属性计算年度经常性收入。

请注意:根据您的订阅情况,所有用户在您的账户中创建的数据集数量是有限制的。有关这些限制的更多信息,请参阅HubSpot 的产品和服务目录



访问和使用预建数据集

  • 在 HubSpot 帐户中,导航到数据管理 > 数据集
  • 将鼠标悬停在要使用的数据集名称上,然后单击 "构建报告"。

  • 要编辑数据集,请单击 "编辑"。
  • 要导出数据集,请单击操作,然后单击导出。

创建自定义数据集( 仅限Operations Hub 专业版 企业版)

为团队创建多个数据集意味着报告创建者不必在每次需要创建报告时都选择数据源。数据集还可以在创建后更新,这样就可以同时更新使用该数据集的所有报告。

下面将介绍如何创建数据集、如何在报告中使用数据集以及数据集工具中可用功能的定义。

创建数据集

  • 在 HubSpot 帐户中,导航到数据管理 > 数据集
  • 在右上角单击 "创建数据集"。或使用模板创建数据集,浏览可用模板,然后单击使用模板。

数据源

首先,选择要包含在数据集中的数据源。数据源是指要报告的对象、资产和事件。这包括所有 CRM 对象(如联系人或自定义对象)和资产(如网站页面和电子邮件、对话、销售活动等)。每个数据集最多可选择 5 个数据源。

主要数据源将是数据集的重点,所有其他数据源都与该主要数据源相关。为了连接这些数据源,HubSpot 会在后台使用尽可能短的路径连接数据。例如,联系人和交易是直接相关的,无需额外连接即可选择。

但是,其他数据源不能直接关联,需要其他数据源将数据连接在一起。例如,如果你的主要数据源是交易,而你想在报告中包含博客文章数据,那么 HubSpot 只能通过联系人和网络活动数据源来链接这些数据源。这些其他来源将被自动选择来连接数据。

  • 要选择主要数据源,请单击添加 主要数据源,然后选择数据源。

  • 单击继续。
  • 继续选择其他数据源。在右侧面板中,您可以查看当前所选数据源之间的关系。
  • 选择数据源时,请查看屏幕底部的预览窗格,以预览数据。
  • 选择数据源后,在右上角单击下一步。

添加属性和字段

选择要包含在数据集中的字段。你可以将现有的 HubSpot 属性以及自定义公式字段添加到数据集中。

添加属性

  • 要向数据集中添加属性,可将属性从左侧边栏拖放到数据集字段区。

  • 要重命名属性或查看其数据预览,请单击数据集字段下的属性,然后在右侧的名称字段中输入新名称。重命名属性只会更新该数据集中的名称。这样就可以自定义这些字段在报告生成器中的显示方式,但不会影响现有属性的名称。

添加公式字段

公式字段特定于数据集,可用于根据数据集中的属性计算值。了解有关使用灵活表达式构建公式的更多信息。

  • 要创建公式字段,请单击添加派生 字段>公式字段。

  • 在底部,输入字段的名称。
  • 输入公式。你可以引用添加到数据集的属性以及数据集之外的其他 HubSpot 属性,并使用函数根据属性和字面数据进行计算。了解更多有关公式语法和定义的信息
    • 要手动输入公式,请在公式字段中开始键入。默认情况下,HubSpot 会在你输入文本时显示自动完成选项。

    • 要插入已添加到数据集的属性,请单击 数据集字段下拉菜单,然后选择属性。
    • 要插入数据集中没有的属性,请单击HubSpot 属性下拉菜单,然后选择属性。
    • 要插入函数,请单击函数下拉菜单,然后选择一个函数。
    • 要插入片段,请单击片段下拉菜单,然后选择一个预建公式。片段是根据数据集中的数据源填充的。因此,与交易数据源相比,联系人数据源数据集可用的片段会有所不同。
  • 创建公式时,公式字段会显示检测到的任何问题。当公式无效时,会显示一个指示符。单击[X] 问题可查看错误详情。
  • 设置好字段后,单击右上角的 "审核"。

添加条件字段

条件字段可让用户根据设定条件对数据进行分组或装桶。这些字段只能在数据集或自定义报告生成器中使用。您可以使用条件字段,根据交易规模计算不同的佣金,或将反馈回复转化为类别,例如,标签在 1-6 之间的就被标记为 "反感者"。

通过条件字段,您可以使用 IF() 函数建立一个公式。使用条件字段创建的任何字段都可以在标准公式创建字段中使用 IF() 函数重新创建。

  • 要创建条件字段,请单击添加派生 字段>条件公式字段。

  • 在底部输入字段的名称。该名称将在使用该段创建报告时显示。
  • 在条件部分,输入IF 条件。对于每一行数据,如果本部分中设置的条件为真,则该行将用Then 字段中设置的值标注如果条件为假,则将用默认值 字段中设置的值标注该行你可以引用添加到数据集的属性以及数据集之外的其他 HubSpot 属性,并使用函数根据属性和字面数据进行计算。下面将详细介绍公式语法和定义
    • 要手动输入公式,请在IF字段中开始键入。默认情况下,HubSpot 会在你输入文本时显示自动完成选项。

    • 要插入已添加到数据集的属性,请单击 数据集字段下拉菜单,然后选择属性。
    • 要插入数据集中没有的属性,请单击HubSpot 属性下拉菜单,然后选择属性。
    • 要插入函数,请单击函数下拉菜单,然后选择一个函数。

    • 在"然后"字段中,输入您希望在条件为真时分配的值。
  • 要添加另一个条件字段,请单击添加条件块。条件块按顺序处理,如果第一个条件为真,则将设置该块中定义的值。如果不为真,HubSpot 将转到下一个区块,依此类推。任何不符合设定条件的行都将被指定为默认值。

  • 在 "默认 "部分,如果条件未满足,请输入Else 的值。

  • 设置好字段后,单击右上角的 "审核"。
例如,要使用条件字段按订阅级别评估客户,可创建三个条件块。


过滤

为字段添加筛选器,进一步完善数据。

添加筛选器

  • 导航至 "筛选器"选项卡。
  • 从左侧边栏单击并拖动字段。
  • 单击字段查看其筛选器选项。选择一个筛选器,然后单击应用。
  • 单击字段,然后单击 "与另一个筛选器分组 "下拉菜单,即可将筛选器分组。选择另一个活动筛选器,然后单击应用。

    • 单击 "如果匹配则包含数据"( )下拉菜单,即可更改过滤 器的使用方式:
      • 下面的所有筛选器:数据必须符合设置的所有筛选条件。
      • 以下任一筛选条件:如果数据符合设置的一个或多个筛选条件,则可以包含在内。
      • 自定义筛选规则:编写自己的筛选规则。可以使用布尔表达式,如 "1 和(2 或 3)"。
    • 要取消分组筛选器,请单击筛选器,然后单击与另一个筛选器分组下拉菜单。选择 "无",然后单击 "应用"。
  • 设置完筛选器后,单击下一步

审核

保存数据集之前,请先查看数据集。

  • 在 "来源 "下,查看您选择的数据来源。
  • 在字段下,查看数据集中的字段。这包括
    • 字段:字段的名称。
    • 衍生: 字段是标准 HubSpot 字段还是自定义计算字段。
    • 数据类型:字段中包含的数据类型。
    • 输入:字段的表达式。
    • 来源: 数据来源(如联系人)。
  • 在预览面板中,查看数据预览。您可以单击 "查看表格关系 "查看数据的连接方式。
  • 查看数据后,单击保存保存数据集。
  • 在右侧面板中,输入数据集的名称和描述。
  • 单击应用。

然后你就可以进入报告生成器,根据数据集创建报告

查看和管理数据集

在数据集仪表板上,您可以查看和编辑现有数据集。

  • 在 HubSpot 账户中,导航至报告 >数据管理,然后选择数据 集。
  • 您可以使用表格顶部的筛选器过滤现有数据集。
  • 要编辑数据集,请将鼠标悬停在数据集上,然后单击 "编辑"。然后您将进入数据集详细信息页面。
    • 在 "预览"选项卡上,查看数据集的数据预览。
    • 在 "元数据"选项卡上,查看数据集中的数据源和字段。其中包括
      • 字段:字段的名称。
      • 衍生: 字段是标准 HubSpot 字段还是自定义计算字段。
      • 数据类型:字段中包含的数据类型。
      • 输入:用于将数据引入字段的字符串。
      • 来源: 数据来源(如联系人)。
    • 在 "报告"选项卡上,查看使用数据集创建的报告。
    • 在数据集详细信息页面,也可以单击 "创建报告 "使用数据集创建新报告。

使用数据集创建报告

创建数据集后,可以通过报告生成器或数据集工具根据数据集创建报告。

  • 从数据集创建报告:
  • 从自定义报告生成器创建报告:
    • 在 HubSpot 帐户中,导航到报告 > 报告。 在右上角单击 "创建报告"。
    • 在右上角单击创建报告。
    • 选择自定义报告生成器。
    • 在顶部,单击 "数据集"选项卡查看现有数据集。
    • 选择要使用的数据集,然后单击下一步。

参考资料

语法

在函数中,可以使用来自属性和字段的数据或字面数据。属性和字段数据将根据各个数据源而动态变化,而字面数据则是恒定的。例如

  • 2021-03-05 是字面日期,是恒定的。
  • [CONTACT.createdate] 是基于属性的日期,对于每条联系人记录都是动态的。

只要数据类型与函数所需的参数兼容,函数既可以包含字面数据,也可以包含属性/字段数据。例如

DATEDIFF("MONTH", "2021-01-01", “[CONTACT.createdate]”)

下面将介绍字面数据和属性/字段数据的语法,以及如何将它们纳入公式。

字面语法

使用文字在计算中添加特定的静态文本字符串、数字、真假值和日期。

  • 字面字符串: 用引号包围的文本。例如,“My cool string”.
  • 数字字面:不带引号的数字。例如:42
  • 布尔字面: truefalse
  • 日期字面: 格式为"YYY-MM-DD" 的字符串,或日期时间戳数字(如1635715904 )。

属性语法

通过属性引用,可以直接包含所选数据源属性中的值。您无需将属性添加为数据集字段即可引用该属性。

在引用属性时,请使用以下语法:

  • 引用表达式总是用方括号 ([] ) 包围。
  • 属性引用指定对象或事件名称,后面跟句号和内部属性名称。例如
    • [CONTACT.lifecyclestage]
    • [COMPANY.name]
    • [e_hs_scheduled_email_v2.__hs_event_native_timestamp]

字段引用语法

在公式中引用字段时,可在字段名周围加上方括号。例如

    • [Field 1]
    • [My awesome custom field]

只要公式的运算符和函数接受字段的数据类型,就可以在公式中引用字段。例如,如果创建了一个包含字符串的新字段,就可以在接受字符串的函数中引用该字段:

  • 如果字段 1 是[DEAL.name] ,它包含一个字符串值(交易名称)。
  • CONCAT([Field 1], "Q4") 将是有效的,因为它包含两个字符串值。
  • CONCAT([DEAL.name], 2012)无效,因为它包含一个字符串和一个数字值。

操作符

操作符可以与字面值和属性/字段值一起使用,操作符按照标准 PEMDAS 运算顺序进行运算。这样就可以使用括号嵌套操作符。例如

  • 将数字与属性引用相加:1 + [DEAL.amount]
  • 使用括号嵌套操作:(1 + 2) * (3 + 4)
操作符 说明 使用示例

+

数字相加。返回一个数字。

1 + 1
= 2

[DEAL.amount] + 100

-

减去数字。返回一个数字。

100 - 1
= 99

EXP(1) - EXP(1)
= 0

WEEKNUM([DEAL.closedate]) - WEEKNUM([DEAL.createdate])

*

数字相乘。返回一个数字。

2 * 2
= 4

POW(10, 2) * -1
= -100

[DEAL.amount] * 0.5

/

除数。返回一个数字。

10/ 2
= 5

[DEAL.amount] / DATEDIFF("DAY", [DEAL.createdate], [DEAL.closedate])

-

否定一个数。

-100
= -100

-[DEAL.amount]

AND&&

检查两个布尔值是否均为真。返回一个布尔值。

true AND false
= false

CONTAINS(“HubSpot”, “Hub”) && CONTAINS(“HubSpot”, “Spot”)
= 真

OR||

检查两个布尔值中是否有一个为真。返回一个布尔值。

true OR false
= true

CONTAINS(“HubSpot”, “Hub”) || CONTAINS(“HubSpot”, “CRM”)
= true

!

否定一个布尔值。返回另一个布尔值。

!true
= false

===

等式运算符。返回一个布尔值。

=true
= 真

IF

IF 逻辑是在满足特定条件时执行的一组规则。您可以使用 IF 逻辑来区分数据。例如,您可以使用 IF 逻辑来

  • 根据交易规模计算不同的佣金(例如,交易规模越大,佣金越高)。
  • 将交易分级,以便在报告中进行分析和采取行动。
  • 将反馈回复转化为类别(例如,标签 1-6 为减分者)。
  • 根据联系人被标记为 "线索"的天数确定其优先级。

标签

LABEL 函数可将枚举属性区间值转换为用户友好的值。一些 HubSpot 定义的属性(如交易和联系人所有者)表示为内部值。这给分析带来了困难。当与支持翻译的 HubSpot 定义属性一起使用时,LABEL 函数将根据门户设置而非用户设置提供翻译。例如,你可以使用 LABEL 函数来

  • 直接在字段中访问联系人或交易阶段名称

LABEL([DEAL.dealstage]) = "Closed Won"(10)

  • 在字段中直接引用 HubSpot 所有者的名称

LABEL([DEAL.hubspot_owner_id]) = "John Smith"


数字功能

函数 定义 参数 使用示例

ABS

计算一个数字的绝对值。返回一个数字。

ABS(number)

number:要计算绝对值的数字。

ABS(-10)
= 10

ABS(10)
= 10

CEIL

将十进制数值四舍五入为最接近的整数。返回一个数字。

CEIL(number)

number:取上限的数字。

CEIL(3.14)
= 4

CEIL(EXP(1))
= 3

CEIL(LN([DEAL.amount]))

DIV0

除以一个数字,但当被除数为 0 时返回 0。返回一个数字。

DIV0(dividend, divisor)

除数:除法运算中用作除数的数字。

除数:除法运算中用作除数的数字,除数为零时,总值为零

DIV0(5, 2)
= 2.5

DIV0(5, 0)
= 0

DIV0([DEAL.amount], DATEDIFF("DAY", [DEAL.createdate], [DEAL.closedate]))

EXP

计算机欧拉数提升到一个值。返回一个数字。

EXP(exponent)

指数:欧拉数的指数。

EXP(1)
= 2.718281828459045

EXP(0)
= 1

FLOOR

将十进制数值向下舍入为最接近的整数。返回一个数字。

FLOOR(number)

number:欧拉数的指数。

FLOOR(3.14)
= 3

CEIL(EXP(1))
= 2

FLOOR(LN([DEAL.amount]))

LN

计算数值的自然对数。返回一个数字。

LN(number)

number:数值的自然对数。

LN(1)
= 0

LN(EXP(1))
= 1

LN([DEAL.amount])

LOG

计算一个数值在指定基数内的对数。返回一个数字。

LOG(base, value)

base:计算数值的对数时使用的基数。

值:要取对数的数字。

LOG(10, 1)
= 0

LOG(10, 10)
= 1

LOG(10, [DEAL.amount])

POWER

将基数提高到指定的幂。返回一个数字。

POWER(base, exponent)

基数:要计算幂的数值。

指数:基数的幂级数。

POWER(2, 10)
= 1024

POWER(100, 0.5)
= 10

POWER([DEAL.hs_arr], 2)

SQRT

取非负数的平方根。返回一个数字。

SQRT(number)

number:要取平方根的数字。

SQRT(100)
= 10

SQRT([DEAL.hs_arr])

WIDTH_BUCKET

将数值分成宽度相等的桶。返回数值所在桶的编号。

如果返回值低于最小值,则返回 0。如果返回值高于最大值,则返回桶数 +1。

WIDTH_BUCKET(value, minValue, maxValue, bucketCount)

value:要计算的数值,以桶为单位。

minValue:开始分选的最小值。

maxValue:分选到的最大值。

bucketCount:在minValue和maxValue之间进行分选的等宽桶数

WIDTH_BUCKET(25, 0, 100, 10)
= 3

WIDTH_BUCKET(95, 0, 100, 10)
= 10

WIDTH_BUCKET(-1000, 0, 100, 10)
= 0

WIDTH_BUCKET(9999, 0, 100, 10)
= 11

WIDTH_BUCKET([DEAL.amount], 0, 10000, 1000)

字符串功能

函数 定义 参数 用法示例

CONTAINS

判断字符串是否包含区分大小写的子串。返回布尔值。

CONTAINS("string", "substring")

string:要测试的字符串值。

substring:字符串中要检查的值。

CONTAINS("HubSpot", "Hub")
= true

CONTAINS("foo", "bar")
= false

CONTAINS([CONTACT.firstname], "Mike")

CONCAT

连接两个字符串。返回一个字符串。

CONCAT("string1", "string2")

string1:字符串值,string2 将附加到该字符串。

string2:要追加到 string1 的字符串值。

CONCAT("Hub", "Spot")
= "HubSpot

CONCAT([CONTACT.firstname], CONCAT(" ", [CONTACT.lastname]))

LENGTH

计算字符串的长度。返回一个数字。

LENGTH("string")

string:要计算长度的字符串值。

LENGTH("HubSpot")
= 7

LENGTH([FEEDBACK_SUBMISSION.hs_content])

TRIM

删除字符串的首部和尾部空白。返回字符串。

TRIM(" string ")

string:要删除空白的字符串值。

TRIM(" Cats are great ")
= "猫很棒"

日期函数

函数 定义 参数 使用示例

DATE_FROM_PARTS

用年、月、日创建日期值。返回日期。

DATE_FROM_PARTS(year, month, day)

年: 所需日期的年部分。

月:所需日期的月部分。

日:所需日期的日部分。

DATE_FROM_PARTS(2021, 1, 1)
= 2021-01-01

DATEDIFF

返回指定时间单位内第一个日期值和第二个日期值之间的时间单位数。返回一个数字。

DATEDIFF(“datePart”, “date1”, “date2”)

datePart:差值计算中要使用的年、季、月、周或日单位。

date1:从 date2 减去的起始日期值。

date2:从 date1 减去的终止日期值。

DATEDIFF("DAY", "2021-01-01", "2021-02-01")
= 31

DATEDIFF("MONTH", "2021-01-01", DATE_FROM_PARTS(2021, 2, 1))
= 1

DATEDIFF("QUARTER", [DEAL.createdate], [DEAL.closedate])

DATEPART

从日期值中提取年、季、月、周或日。返回一个数字。

DATEPART(“datePart”, “date”)

datePart:要提取的年、季、月、周或日单位。

date:要提取日期部分的日期值。

DATEPART("DAY", "2021-03-15")
= 15

DATEPART("MONTH", DATE_FROM_PARTS(2021, 3, 15))
= 3

DATEPART("YEAR", [DEAL.createdate])

DATETRUNC

将日期值截断为年、季、月、周或日。

DATETRUNC(“datePart”, “date”)

datePart:要截断的年、季、月、周或日单位。

date:要截断的日期值。

DATETRUNC("YEAR", DATE_FROM_PARTS(2021, 3, 15))
= 2021-01-01

DATETRUNC("MONTH", "2021-03-15")
= 2021-03-01

DATETRUNC("DAY", [e_visited_page.__hs_event_native_timestamp])

TIMESTAMP_FROM_PARTS

根据年、月、日、小时、分钟和秒创建时间戳值。返回日期时间值。

TIMESTAMP_FROM_PARTS(year, month, day)

年:所需日期的年部分。

月:所需日期的月部分。

日:所需日期的日部分。

TIMESTAMP_FROM_PARTS(2021, 1, 1)
= 2021-01-01

WEEKNUM

计算日期在一年内的周数。返回一个数字。

WEEKNUM(“date”)

date:用于计算一年内星期数的日期时间值。

WEEKNUM("2021-03-15")
= 11

WEEKNUM(“1609459200”)
= 11

WEEKNUM(“[deal.createdate]”)

NOW

根据账户时区返回当前时间。返回日期时间值。

NOW()

NOW()
= 1633611966314

WORKINGDAYS

返回两个日期之间的周天数(周一至周五)。

WORKINGDAYS(value1, value2)

value1:起始日期时间值。

value2:结束日期时间值。

WORKINGDAYS("2022-01-01", "2022-01-31")
= 21

WORKINGDAYS("1640995200", "2022-01-31")
= 21

WORKINGDAYS([DEAL.createdate], NOW())

这篇文章有帮助吗?
此表单仅供记载反馈。了解如何获取 HubSpot 帮助