跳到內容
請注意::這篇文章的翻譯只是為了方便而提供。譯文透過翻譯軟體自動建立,可能沒有經過校對。因此,這篇文章的英文版本應該是包含最新資訊的管理版本。你可以在這裡存取這些內容。

建立計算屬性

上次更新時間: 一月 31, 2025

可与下列任何一种订阅一起使用,除非有说明:

行銷 Hub   Professional , Enterprise
銷售 Hub   Professional , Enterprise
Service Hub   Professional , Enterprise
Operations Hub   Professional
Content Hub   Professional , Enterprise

你可以创建根据其他属性的计算结果填充数据的属性。通过滚动属性,你可以自动计算相关记录上属性的最小值、最大值、计数、总和或平均值。使用计算属性,可以根据属性值之间、直到或自属性值之后的时间设置等式,或根据对象的属性创建自定义等式。

例如,您可以创建

  • 公司属性,根据自定义公式计算获取新客户的成本。
  • 联系人属性,用于计算联系人相关交易的平均金额
  • 交易属性,用于计算交易开启后的时间。

根据您的 HubSpot 订阅情况,您可以创建的计算属性数量是有限制的。

根据 相关记录的属性创建卷积属性

您可以为一个对象创建属性,并根据该对象关联记录的特定属性值进行计算。您可以根据该对象的所有关联记录或特定 关联标签包括同一对象关联进行计算

例如,您可以创建一个交易属性,用于计算带有决策者 标签的交易关联联系人的销售活动记录总数。

  • 在你的 HubSpot 帳戶中,點擊頂端導覽列中的settings「設定圖示」。
  • 在左侧边栏菜单中,导航至属性

  • 单击 选择对象 下拉菜单,然后选择[对象] 属性 ,为该对象创建属性。

  • 输入属性的基本详细信息,然后单击 字段类型 选项卡。
  • 选择 "卷积 "。
  • 单击卷积类型下拉菜单,然后选择以下类型之一:
    • 最小值:显示选定对象相关记录中选定数字属性的最小值。
    • 最大:显示选定对象所有关联记录中选定数字属性的最大值。
    • 计数:计算选定对象中具有所选数字属性值的关联记录总数。
    • 求和:对所选对象所有关联记录中的所选数字属性值进行求和。
    • 平均值:计算选定对象所有关联记录中选定数字属性值的平均值。
  • 要选择如何格式化属性值,请单击数字格式下拉菜单,然后从以下格式中进行选择:格式化 数字非格式化数字货币百分比持续时间
  • 如果选择"货币 "作为交易属性的格式,该属性将默认使用账户的公司 货币。要使用每个交易记录的货币,请选择 使用记录货币而不是公司货币复选框。使用记录货币只会影响值的显示方式,不会自动应用汇率。

  • 选择要计算属性的关联对象关联记录属性。
  • 要只根据具有特定标签的记录进行计算,请单击选择关联标签,然后选择要包含的标签
  • 要添加附加条件,请单击创建条件。设置附加条件后,必须满足该条件才能计算属性(例如,当最近交易金额> 1000 时计算属性)。
    • 在第一个下拉菜单中,选择一个属性
    • 在第二个下拉菜单中,选择一个运算符,将第一个属性的值与一个数字或另一个属性的值进行比较。
    • 在第三个下拉菜单中,选择一个属性或输入一个将与第一个属性进行比较的数字
  • 单击创建。创建后,属性显示的字段类型将是Rollup。

请注意:原始持续时间值以毫秒为单位存储。如果您在其他 HubSpot 工具(如过滤器、计算属性公式)中使用持续时间计算属性,您可能需要使用毫秒值

在计算属性之间创建时间

您可以创建计算同一对象中两个选定日期选择器属性之间时间的属性。例如,您可以计算票单所有者分配时间与票单关闭时间之间的时间。进一步了解如何显示时间 间隔计算属性值

如果你想根据今天的日期建立一个属性,请进一步了解如何在属性和筛选器中使用相对时间

  • 在你的 HubSpot 帳戶中,點擊頂端導覽列中的settings「設定圖示」。
  • 在左侧边栏菜单中,导航至属性

  • 单击 选择对象 下拉菜单,然后选择[对象] 属性 ,为该对象创建属性。

  • 输入属性的基本详细信息,然后单击 字段类型 选项卡。
  • 选择计算作为字段类型。
  • 单击计算属性类型下拉菜单,然后选择时间间隔
  • 单击下拉菜单,选择开始日期结束日期属性。

  • 要添加附加条件,请单击创建条件。设置附加条件后,必须满足该条件才能计算属性(例如,当最近交易金额> 1000 时计算属性)。
    • 在第一个下拉菜单中,选择一个属性
    • 在第二个下拉菜单中,选择一个运算符,将第一个属性的值与一个数字或另一个属性的值进行比较。
    • 在第三个下拉菜单中,选择一个属性或输入一个将与第一个属性进行比较的数字
  • 点击创建。创建后,属性显示的字段类型将是计算。

在显示计算属性之间的时间值时,预计会出现以下行为:

  • 时间会在不同的 HubSpot 工具中以不同的方式显示。
  • 对于没有时间戳的日期属性,计算中使用的默认时间是所选日期的世界协调时上午 12:00。
  • 在记录(如联系人记录)中,显示的值将以秒、分、小时、天、月年为单位,并根据特定阈值四舍五入到最接近的整数单位。例如,如果计算的时间是 1 天 12 小时,那么显示的值将是36 小时,但如果计算的时间是 3 天 2 小时,那么显示的值将是3 天。单位阈值为
    • 12 年或更长时间将以年为单位显示,并四舍五入到最接近的整年。
    • 2.5 个月或更长时间将以月为单位显示,并四舍五入到最接近的整月。
    • 2.5 天或更长时间将以天为单位显示,并四舍五入到最接近的整日。
    • 2.5 小时或更长时间将以小时为单位显示,并四舍五入到最接近的整小时。
    • 2.5 分钟或更长时间将以分钟为单位显示,并四舍五入到最接近的整分钟。否则将以秒为单位显示。
  • 在使用此字段类型属性的自定义报告中,显示的值将以天为单位。例如,如果计算的时间是一年零 20 天,那么显示的值将是385 天

请注意:在 HubSpot 中,"时间间隔 "和 "平均值"属性类型的原始值以毫秒为单位存储。如果使用这些值的等式得出的值高于预期,请使用毫秒转换器将其转换为您所需的时间单位。


创建开始计算时间或结束计算时间的属性

要跟踪从某个日期开始或到某个日期为止的时间量,可以创建 "从开始计算的时间 "或 "到结束计算的时间 "属性。例如,可以创建 "开始时间 "属性来跟踪交易已开始多长时间,或创建 "结束时间"属性来跟踪客户离今天还有多远。

自时间或至时间计算属性的值是根据日期选择器或日期和时间选择器属性的值计算得出的。要创建一个属性,其值根据今天的日期显示相对时间,请学习如何创建相对时间日期/日期和时间选择器属性。了解在 HubSpot 中使用今日日期和相对时间的更多信息。

创建自时间或直至时间计算属性:

  • 在你的 HubSpot 帳戶中,點擊頂端導覽列中的settings「設定圖示」。
  • 在左侧边栏菜单中,导航至属性

  • 单击 选择对象 下拉菜单,然后选择[对象] 属性 ,为该对象创建属性。

  • 输入属性的基本详细信息,然后单击 字段类型 选项卡。
  • 选择计算作为字段类型。
  • 单击计算属性类型下拉菜单,然后选择自时间至时间

  • 单击创建。保存后,就无法编辑 "开始时间"或"结束时间",但可以选择不同的开始或结束日期属性。

创建 "自时间 " "到时间"属性后,请学习如何查看该属性并在筛选器中使用它

请注意: 以下内容支持 "自时间"和 "至时间 "属性:

创建自定义方程计算属性

您还可以创建根据自己的标准计算值的属性。自定义等式只能为创建新属性的同一对象中的数字属性设置。例如,您可以创建一个等式来计算公司最近交易的金额(最近交易金额)与您的企业联系该公司的次数(联系次数)的比较。

您可以使用算术运算符、比较运算符、逻辑运算符、条件语句和其他函数建立自定义等式。这些公式可以返回数字、布尔、字符串或日期值。了解有关可用运算符函数以及如何 格式化公式的更多信息。您还可以查看常用公式的示例

建立自定义方程计算属性:

  • 在你的 HubSpot 帳戶中,點擊頂端導覽列中的settings「設定圖示」。
  • 在左侧边栏菜单中,导航至属性

  • 单击 选择对象 下拉菜单,然后选择[对象] 属性 ,为该对象创建属性。

  • 输入属性的基本详细信息,然后单击 字段类型 选项卡。
  • 选择计算作为字段类型。
  • 单击计算属性类型下拉菜单,然后选择自定义方程
  • 单击输出类型下拉菜单,然后选择计算将返回的输出类型。您可以选择以下其中一种:数字布尔字符串日期

请注意:所选输出类型必须与编辑器右上角显示的输出类型一致,否则将无法创建属性。对于返回日期的属性,可以使用数字或日期输出类型,这两种类型决定了数值的显示方式(例如,数字显示毫秒级的日期,日期显示格式化的日期)。

  • 如果您选择了 "编号"输出类型:
    • 单击数字格式下拉菜单,然后选择属性值的格式。你可以选择以下其中一种:格式化数字非格式化数字货币百分比持续时间
    • 如果选择 "货币 "作为交易属性的数字格式,该属性将默认使用账户的公司 货币 。要使用每个交易记录的货币,请选择 使用记录货币而不是公司货币复选框。

请注意:使用记录货币只会影响数值的显示方式,而不会自动应用汇率。要添加汇率,可以在公式中 加入 exchange_rate dated_exchange_rate 函数


  • 在编辑器中插入、键入或粘贴函数和属性,以建立自定义方程。进一步了解自定义计算公式语法。 插入公式元素
    • 单击插入下拉菜单。
    • 要在方程中插入函数,请选择函数,然后选择一个函数
    • 要在公式中插入属性,请选择属性 ,然后 选择一个属性。只能使用创建属性的同一对象的属性创建自定义公式。

  • 如果方程有错误,请单击编辑器上方的[x] 问题查看错误原因。如果方程有未解决的错误,则无法创建属性。进一步了解如何格式化公式。
  • 要预览公式输出,请单击测试公式

请注意: 如果自定义公式中的任何数字属性没有值或为空值,计算将无法运行,计算属性值将为空。即使等式中包含常数,值也将为空。在这种情况下,可以使用 if is_known 函数将值设置为 0


  • 单击创建。创建后,属性显示的字段类型将是计算

自定义方程语法

  • 字面语法:使用字面数据,您可以在方程中添加文本字符串、数字和真假值。您可以通过以下方式格式化字符串、数字、布尔常量和日期常量:
    • 字符串文字:用引号包围的文本。可以用单引号 ('constant') 或双引号 ("constant") 表示。

    • 数字字面:不带引号的数字。常数可以是任何实数,也可以包括点符号。例如,10051.5589 都是有效的常数。

    • 布尔字面:布尔常量可以是truefalse

    • 日期字面:以毫秒为单位的日期。例如,1698508800000
  • 属性语法:您可以在自定义公式中包含同一对象的其他属性。
    • 如果在编辑器中 插入 属性,它将自动格式化并作为等式的一部分进行验证。
    • 如果您选择手动键入或粘贴属性到编辑器中,其格式应为[properties.{propertyInternalName}]例如,要添加 内部 值为 Test_score属性 Test score,可在编辑器中输入 [properties.Test_score]
    • 在公式中使用枚举属性 (如下拉选择、单选选择)时,属性值被视为字符串,因此必须用双引号封装("如"subscriber"),还必须使用属性选项的内部名称(如"appointmentscheduled" )。

操作员

您可以在公式中使用运算符更新、评估或比较常量和属性值。使用多个运算符时,它们将遵循 PEMDAS 的操作顺序。根据您使用的数据类型,您可以在自定义公式中包含以下运算符。

操作员 说明
+ 添加数字或字符串。返回一个数字。
- 减数字。返回一个数字。
* 数字乘法返回一个数字。
/ 除数返回一个数字。
< 检查一个值是否小于另一个值。由数字属性或常量支持。返回布尔值。
> 检查数值是否大于另一个数值。由数字属性或常量支持。返回一个布尔值。
<= 检查一个值是否小于或等于另一个值。由数字属性或常量支持。返回布尔值。
>= 检查一个值是否大于或等于另一个值。由数字属性或常量支持。返回一个布尔值。
! 检查是否所有值都不为真。返回一个布尔值。
=== 检查一个值是否等于另一个值。支持数字和字符串。返回布尔值。
!= 检查一个值是否不等于另一个值。支持数字和字符串。返回布尔值。
or|| 检查两个值中是否有一个为真。返回布尔值。
and&& 检查两个值是否都为真。返回布尔值。

功能

您可以在自定义公式中使用函数来计算数值和完成数据操作。根据您使用的数据类型,您可以在自定义公式中使用以下函数。

功能 参数 示例

abs

获取数字的绝对值。返回一个数字。

abs(number)

number:要获取绝对值的数字。

abs(-100) = 100

add_time

将给定时间添加到基准时间,由指定单位控制。

add_time(base, timeToAdd, unit)

base:基准时间。

timeToAdd:要添加到基准时间的时间量。

unit:表示timeToAdd 的单位。选项包括second,minute,hour,day,week,monthyear

add_time(1699320015000, 1, “second”) = 1699320016000

concatenate

将最多 100 个字符串合并为一个值。返回一个字符串。

concatenate("arg 1", "arg 2")

arg1:要追加到参数 2 的字符串。

arg2:要追加到 arg 1 的字符串。

concatenate("Example", " Test") = "示例测试

contains

判断一个字符串是否包含另一个字符串(区分大小写)。返回布尔值。

contains(text, substring)

text:要检查子串的字符串或文本属性。

substring:文本应包含的字符串。

contains([properties.name], "Spot")

contains("HubSpot", "Spot")

currency_decimal_places

获取货币的小数位数。返回一个数字。

currency_decimal_places(currency)

currency:要计算小数位数的货币字符串。

currency_decimal_places("USD")

dated_exchange_rate

获取给定时间的汇率值。返回一个数字。

dated_exchange_rate(currency, date)

currency:要计算特定日期汇率的货币字符串(如"USD" )。

date:要计算汇率的日期时间属性。

dated_exchange_rate("USD", [properties.closedate])

exchange_rate

获取最新汇率。返回一个数字。

exchange_rate(currency)

currency:要计算汇率的货币字符串。

exchange_rate("USD")

euler

返回欧拉常数值。

euler()

euler() = 2.71828

if

设置条件表达式。

if(condition, arg2)if(condition, arg2, arg3)

condition:布尔语句,用于确定计算值。

arg2:布尔值、数字或字符串,在满足条件时作为计算值。

arg3(可选):不满足条件时的计算值。如果包含,则必须与arg2 类型相同。如果不使用,则在不满足条件时,该值将是null

if([properties.amount] > 1000, "large", "small")

is_known

确定标记是否有已知值。返回布尔值。

is_known(property)

property:要检查值的属性。

is_known([properties.name]) = true

last_updated

获取令牌最后一次更新的日期。返回以毫秒为单位的时间戳字符串。

last_updated(property)

property:要检查最近更新日期的属性。

last_updated([properties.amount]) = "1672531200000"

lowercase

将所有字符改为小写。返回字符串。

lowercase(text)

text:要改为小写的字符串或文本属性值。

lowercase("heLLo") = "hello


lowercase([properties.test])

max

获取两个数字的最大值。返回一个数字。

max(arg1, arg2)

arg1:第一个数字或数字属性。

arg2:第二个数字或数字属性。

max(500,[properties.amount]) = 500,如果金额值小于 500。

min

获取两个数字的最小值。返回一个数字。

min(arg1, arg2)

arg1:第一个数字或数字属性。

arg2:第二个数字或数字属性。

min(500, 250) = 250

month

获取给定日期的数字月份。返回一个数字。

month(date)

date:要计算月份的日期时间属性。

month([properties.closedate])

number_to_string

将数字转换为字符串。返回字符串。

number_to_string(number_to_convert)

number_to_convert:要转换为字符串的数字或数字属性。

number_to_string(1000) = "1000"

pipeline_probability

获取管道阶段的概率。返回一个数字。

pipeline_probability(pipeline)

pipeline:要计算概率的管道名称。

pipeline_probability("newdeal")

power

将一个数字提升到另一个数字的值。返回一个数字。

power(base, exponent)

基数:基数。

指数:将基数提升到的数值。

power(5, 2) = 25

round_down

将一个数字向下舍入到指定精度。返回一个数字。

round_down(number_to_round, precision)

number_to_round:要向下舍入的数字或数字属性。

precision:要向下舍入的小数位数。

round_down(4.353, 1) = 4.3

round_nearest

将一个数字四舍五入到指定精度。返回一个数字。

round_nearest(number_to_round, precision)

number_to_round:要四舍五入的数字或数字属性。

precision:四舍五入后的小数位数。

round_nearest(4.32, 1) = 4.3

round_up

将一个数字四舍五入到指定精度。返回一个数字。

round_up(number_to_round, precision)

number_to_round:要四舍五入的数字或数字属性。

precision:四舍五入的小数位数。

round_up(4.353, 1) = 4.4

sqrt

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

sqrt(number)

number:要求取平方根的数字。

sqrt(144) = 12

starts_with

判断一个字符串是否以另一个字符串开头(区分大小写)。返回布尔值。

starts_with(text, substring)

text:要检查子串的字符串或文本属性。

substring:文本应以其开头的字符串。

starts_with([properties.name], "Hub")

starts_with("HubSpot", "Hub")

string_length

返回给定字符串的长度

string_length(text)

text:要检查长度的字符串或文本属性。

string_length(“Wow”) = 3

string_to_number

将字符串转换为数字。返回一个数字。

string_to_number(string_to_convert)

string_to_convert:要将其值转换为数字的字符串或文本属性。

string_to_number("1000") = 1000

subtract_time

从基准时间中减去给定时间,由指定单位控制。

subtract_time(base, timeToAdd, unit)

base基准时间。

timeToSubtract:从基准时间中减去的时间量。

unit:表示timeToSubtract单位。选项包括second,minute,hour,day,week,monthyear

subtract_time(1699320015000, 1, "second") = 1699320014000

time_between

获取两个日期之间的时差。返回一个数字

time_between(date1, date2)

date1:起始日期时间属性。

date2:结束日期时间属性。

time_between([properties.createdate],[properties.closedate])

uppercase

将所有字符改为大写。返回字符串。

uppercase(text)

text:要改为大写的字符串或文本属性。

uppercase("hello") = "HELLO

year

获取给定日期的数字年份。返回一个数字。

year(date)

date:要计算年份的日期时间属性。

year([properties.closedate])

实例

以下是基于常见使用情况的公式示例。

  • 您可以设置 if else 语句,包括包含多个条件的语句和函数内的语句:
    • if([properties.number] < 4, "less than four", "more than four")
    • if([properties.number] < 4, if([properties.other_number] < 2, "both true", "one true"), "not true")
    • concatenate(if([properties.number] < 4, "less", "more"), " than four")
  • 在自定义公式中使用数字属性时,可以包含ifis_known 函数,以便在数字属性为空时将值设置为 0。例如,if(is_known([properties.number]), [properties.number], 0)
  • 在公式中使用记录货币添加汇率时,可以在公式中包含exchange_ratedated_exchange_rate 函数。例如,[properties.amount] * exchange_rate('CAD')
這篇文章有幫助嗎?
此表單僅供記載意見回饋。了解如何取得 HubSpot 的協助