目录

Notion公式百科

公式组成要素

其他

一个用于定期检查优惠券的工作表格

什么是Notion公式

如果你使用过类似Excel、Google Sheet等办公表格软件,你就会很容易理解什么是Notion公式

Notion公式是遵循一定语法的英文代码串,它可以利用Database数据库中的属性、常量、操作符等完成一些复杂的计算或任务。

该公式计算当前金额占目标金额的比例,即存钱进度
该公式计算当前金额占目标金额的比例,即存钱进度

Notion公式使用实例

假如你现在管理着一个优惠券网站,网站上面有许多品牌,你需要定期检查这些品牌的优惠券是否过期并及时更新。

使用Notion公式可以帮助你更好地完成这件事情,正如下面这个表格所展示的一样:

一个用于定期检查优惠券的工作表格
一个用于定期检查优惠券的工作表格

通过下方链接可以查看和复制示例:

这个表格中的公式主要实现以下两个功能:

  1. 根据上一次检查时间,自动计算下一个检查日(每15日检查一次);
  2. 根据未来7天内是否需要检查,对表格进行分组(参考Notion分组功能)。

其中,自动计算下一个检查日的公式如下:

使用Notion公式计算下次检查时间
使用Notion公式计算下次检查时间
				
					dateAdd(prop("上次检查时间"), 15, "days")
				
			

这里我们用到了 dateAdd() 函数,它可以在“上次检查时间”的基础上添加15天时间,然后得到“下次检查时间”。

下一个公式相对复杂一些,用来判断未来7天内是否需要进行检查,即“下次检查时间”距离现在是否小于或等于7天。

使用Notion公式判断7天内是否需要进行检查
使用Notion公式判断7天内是否需要进行检查
				
					if(dateBetween(prop("下次检查时间"), now(), "days") <= 7, true, false)

//为了方便读者理解,我把公式重新进行排版:
if( 
//if函数,如果条件成立,则返回第二个参数,否则返回第三个参数
    dateBetween( 
    //dateBetween函数,用来计算两个日期之间的距离
        prop("下次检查时间"), 
        //引用“下次检查时间”
        now(), 
        //now()函数引用当前时间(编写日期2023年7月18日)
        "days") <= 7, 
        //“days”参数指定时间间隔单位为“日”,间隔不大于7天则条件成立
    true,
    //条件成立返回true,即勾选状态
    false
    //条件不成立则返回false,即未勾选状态
    )
				
			

在这里我们使用dateBetween()函数计算下次检查日期与当前时间的间隔,然后用if()函数判断时间间隔是否小于等于7天,如果是则返回true(复选框打勾),否则返回false(复选框空白)。

完成以上工作后,我们的“7天内需要检查”这一列就有了true(勾选)和false(未勾选)两个不同的值,最后一步便是分组:

使用Group功能对表格进行分组
使用Group功能对表格进行分组

如上图所示,你可以通过点击表格右上角的 ··· 按钮,然后点击 Group 按钮进行分组设置。

用好Notion公式你需要学会这些术语

想要熟练使用Notion公式,并且能够根据工作要求编写公式,必须要了解以下这些要素和术语。

公式的组成要素

  • Property – 属性,用来存放特定类型的数据。简单理解:数据库就是一个表格,那么“属性”就是表格中的列,用来存放对象的某一类信息;
  • Constant – 常量,即一些用数学符号表示的常用数值。我们熟悉的常量有圆周率Π,自然常数e和布尔值(即true和false,1和0)等;
  • Operator – 操作符,比如常见的+、-、*、/等,以及英文形式的add、not和逻辑运算符if等;
  • Function – 函数,拿来即用,以精简的代码实现复杂的运算功能。常见的函数有concat(连接字符串)和dateAdd(指定日期加、减时间);
  • Arguments – 参数,使用函数进行运算时要使用到的数据,由我们用户输入到函数的括号中。

公式的数据类型

Notion公式可以处理4种数据类型:

  • String(字符串)-  即文本类型的数据;
  • Number(数值);
  • Boolean/Checkbox(布尔值/复选框) – 即0或1,true或false;
  • Date(日期)。

理解不同数据类型的含义和区别非常重要。因为某些函数和运算符只能处理特定类型的数据,如果你不熟悉数据类型,那么即使你完全复制了其他人的公式代码,也可能会出错,而你甚至不知道出错的原因。

下面这个例子用来说明数据类型的重要性:

数据类型案例

我们以函数DateAdd()为例,此函数需要接收3个参数:

  • 参数1:日期类型(Date),函数将会在此日期上添加时间间隔;
  • 参数2:数值类型(Number),指定时间间隔的长度;
  • 参数3:字符串类型(String),指定时间间隔的单位。

在下图中,我输入的参数1数据类型为字符串,而不是日期类型,因此公式报错了。

由于输入的数据类型不对,因此公式报错
由于输入的数据类型不对,因此公式报错
Leave a Comment

Your email address will not be published. Required fields are marked *