你可以创建根据其他属性的计算结果填充数据的属性。通过滚动属性,你可以自动计算相关记录上属性的最小值、最大值、计数、总和或平均值。使用计算属性,可以根据属性值之间、直到或自属性值之后的时间设置等式,或根据对象的属性创建自定义等式。
例如,您可以创建
根据您的 HubSpot 订阅情况,您可以创建的计算属性数量是有限制的。
您可以为一个对象创建属性,并根据该对象关联记录的特定属性值进行计算。您可以根据该对象的所有关联记录或特定 关联标签(包括同一对象关联)进行计算 。
例如,您可以创建一个交易属性,用于计算带有决策者 标签的交易关联联系人的销售活动记录总数。
在左侧边栏菜单中,导航至属性。
单击 选择对象 下拉菜单,然后选择[对象] 属性 ,为该对象创建属性。
请注意:原始持续时间值以毫秒为单位存储。如果您在其他 HubSpot 工具(如过滤器、计算属性公式)中使用持续时间计算属性,您可能需要使用毫秒值。
您可以创建计算同一对象中两个选定日期选择器属性之间时间的属性。例如,您可以计算票单所有者分配时间与票单关闭时间之间的时间。进一步了解如何显示时间 间隔计算属性值。
如果你想根据今天的日期建立一个属性,请进一步了解如何在属性和筛选器中使用相对时间。
在左侧边栏菜单中,导航至属性。
单击 选择对象 下拉菜单,然后选择[对象] 属性 ,为该对象创建属性。
在显示计算属性之间的时间值时,预计会出现以下行为:
请注意:在 HubSpot 中,"时间间隔 "和 "平均值"属性类型的原始值以毫秒为单位存储。如果使用这些值的等式得出的值高于预期,请使用毫秒转换器将其转换为您所需的时间单位。
要跟踪从某个日期开始或到某个日期为止的时间量,可以创建 "从开始计算的时间 "或 "到结束计算的时间 "属性。例如,可以创建 "开始时间 "属性来跟踪交易已开始多长时间,或创建 "结束时间"属性来跟踪客户离今天还有多远。
自时间或至时间计算属性的值是根据日期选择器或日期和时间选择器属性的值计算得出的。要创建一个属性,其值根据今天的日期显示相对时间,请学习如何创建相对时间日期/日期和时间选择器属性。了解在 HubSpot 中使用今日日期和相对时间的更多信息。
创建自时间或直至时间计算属性:
在左侧边栏菜单中,导航至属性。
单击 选择对象 下拉菜单,然后选择[对象] 属性 ,为该对象创建属性。
创建 "自时间 " 或"到时间"属性后,请学习如何查看该属性并在筛选器中使用它。
您还可以创建根据自己的标准计算值的属性。自定义等式只能为创建新属性的同一对象中的数字属性设置。例如,您可以创建一个等式来计算公司最近交易的金额(最近交易金额)与您的企业联系该公司的次数(联系次数)的比较。
您可以使用算术运算符、比较运算符、逻辑运算符、条件语句和其他函数建立自定义等式。这些公式可以返回数字、布尔、字符串或日期值。了解有关可用运算符、函数以及如何 格式化公式的更多信息。您还可以查看常用公式的示例。
建立自定义方程计算属性:
在左侧边栏菜单中,导航至属性。
单击 选择对象 下拉菜单,然后选择[对象] 属性 ,为该对象创建属性。
请注意:所选输出类型必须与编辑器右上角显示的输出类型一致,否则将无法创建属性。对于返回日期的属性,可以使用数字或日期输出类型,这两种类型决定了数值的显示方式(例如,数字显示毫秒级的日期,日期显示格式化的日期)。
请注意:使用记录货币只会影响数值的显示方式,而不会自动应用汇率。要添加汇率,可以在公式中 加入 exchange_rate
或 dated_exchange_rate
函数。
请注意: 如果自定义公式中的任何数字属性没有值或为空值,计算将无法运行,计算属性值将为空。即使等式中包含常数,值也将为空。在这种情况下,可以使用 if
和 is_known
函数将值设置为 0。
字符串文字:用引号包围的文本。可以用单引号 ('constant'
) 或双引号 ("constant"
) 表示。
数字字面:不带引号的数字。常数可以是任何实数,也可以包括点符号。例如,1005
和1.5589
都是有效的常数。
布尔字面:布尔常量可以是true
或false
。
1698508800000
。您可以在公式中使用运算符更新、评估或比较常量和属性值。使用多个运算符时,它们将遵循 PEMDAS 的操作顺序。根据您使用的数据类型,您可以在自定义公式中包含以下运算符。
操作员 | 说明 |
+ |
添加数字或字符串。返回一个数字。 |
- |
减数字。返回一个数字。 |
* |
数字乘法返回一个数字。 |
/ |
除数返回一个数字。 |
< |
检查一个值是否小于另一个值。由数字属性或常量支持。返回布尔值。 |
> |
检查数值是否大于另一个数值。由数字属性或常量支持。返回一个布尔值。 |
<= |
检查一个值是否小于或等于另一个值。由数字属性或常量支持。返回布尔值。 |
>= |
检查一个值是否大于或等于另一个值。由数字属性或常量支持。返回一个布尔值。 |
! |
检查是否所有值都不为真。返回一个布尔值。 |
= 或== |
检查一个值是否等于另一个值。支持数字和字符串。返回布尔值。 |
!= |
检查一个值是否不等于另一个值。支持数字和字符串。返回布尔值。 |
or 或|| |
检查两个值中是否有一个为真。返回布尔值。 |
and 或&& |
检查两个值是否都为真。返回布尔值。 |
您可以在自定义公式中使用函数来计算数值和完成数据操作。根据您使用的数据类型,您可以在自定义公式中使用以下函数。
功能 | 参数 | 示例 |
获取数字的绝对值。返回一个数字。 |
number:要获取绝对值的数字。 |
|
|
|
|
将最多 100 个字符串合并为一个值。返回一个字符串。 |
arg1:要追加到参数 2 的字符串。 arg2:要追加到 arg 1 的字符串。 |
|
判断一个字符串是否包含另一个字符串(区分大小写)。返回布尔值。 |
text:要检查子串的字符串或文本属性。 substring:文本应包含的字符串。 |
contains("HubSpot", "Spot") |
获取货币的小数位数。返回一个数字。 |
currency:要计算小数位数的货币字符串。 |
|
获取给定时间的汇率值。返回一个数字。 |
currency:要计算特定日期汇率的货币字符串(如 date:要计算汇率的日期时间属性。 |
|
获取最新汇率。返回一个数字。 |
currency:要计算汇率的货币字符串。 |
|
|
|
|
设置条件表达式。 |
condition:布尔语句,用于确定计算值。 arg2:布尔值、数字或字符串,在满足条件时作为计算值。 arg3(可选):不满足条件时的计算值。如果包含,则必须与 |
|
确定标记是否有已知值。返回布尔值。 |
property:要检查值的属性。 |
|
获取令牌最后一次更新的日期。返回以毫秒为单位的时间戳字符串。 |
property:要检查最近更新日期的属性。 |
|
将所有字符改为小写。返回字符串。 |
text:要改为小写的字符串或文本属性值。 |
|
获取两个数字的最大值。返回一个数字。 |
arg1:第一个数字或数字属性。 arg2:第二个数字或数字属性。 |
|
获取两个数字的最小值。返回一个数字。 |
arg1:第一个数字或数字属性。 arg2:第二个数字或数字属性。 |
|
获取给定日期的数字月份。返回一个数字。 |
date:要计算月份的日期时间属性。 |
|
将数字转换为字符串。返回字符串。 |
number_to_convert:要转换为字符串的数字或数字属性。 |
|
获取管道阶段的概率。返回一个数字。 |
pipeline:要计算概率的管道名称。 |
|
将一个数字提升到另一个数字的值。返回一个数字。 |
基数:基数。 指数:将基数提升到的数值。 |
|
将一个数字向下舍入到指定精度。返回一个数字。 |
number_to_round:要向下舍入的数字或数字属性。 precision:要向下舍入的小数位数。 |
|
将一个数字四舍五入到指定精度。返回一个数字。 |
number_to_round:要四舍五入的数字或数字属性。 precision:四舍五入后的小数位数。 |
|
将一个数字四舍五入到指定精度。返回一个数字。 |
number_to_round:要四舍五入的数字或数字属性。 precision:四舍五入的小数位数。 |
|
获取一个数字的平方根。返回一个数字。 |
number:要求取平方根的数字。 |
|
判断一个字符串是否以另一个字符串开头(区分大小写)。返回布尔值。 |
text:要检查子串的字符串或文本属性。 substring:文本应以其开头的字符串。 |
|
|
|
|
将字符串转换为数字。返回一个数字。 |
string_to_convert:要将其值转换为数字的字符串或文本属性。 |
|
|
|
subtract_time(1699320015000, 1, "second") = 1699320014000 |
获取两个日期之间的时差。返回一个数字。 |
date1:起始日期时间属性。 date2:结束日期时间属性。 |
|
将所有字符改为大写。返回字符串。 |
text:要改为大写的字符串或文本属性。 |
|
获取给定日期的数字年份。返回一个数字。 |
date:要计算年份的日期时间属性。 |
|
以下是基于常见使用情况的公式示例。
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")
if
和is_known
函数,以便在数字属性为空时将值设置为 0。例如,if(is_known([properties.number]), [properties.number], 0)
。exchange_rate
或dated_exchange_rate
函数。例如,[properties.amount] * exchange_rate('CAD')
。