目录

Notion公式百科

公式组成要素

其他

Notion if公式

Notion if公式

Notion if公式所有公式中最常用的一个。if()公式是一个条件语句,它可以判断条件是否成立,然后根据条件成立与否返回不同的值。

if公式语法

				
					if([条件], [条件成立时返回值1], [条件不成立时返回的值2])

//此处条件应为布尔值(即true或false),如果条件为true则返回值1,条件为false则返回值2
//注意:值1和值2的数据类型必须相同,即符合以下语法

if(Boolean, Boolean, Boolean)
if(Boolean, String, String)
if(Boolean, Number, Number)
if(Boolean, Date, Date)
				
			

if()的形式看上去像函数,但在Notion中它其实是一个操作符,而且是一个三元操作符——即需要接收3个参数才能生效。以下是对if()操作符三个参数的详细解析:

  • [条件]第一个参数是布尔(Boolean)类型,该数据类型只包含两个值,即“真”(True)和“假”(False)。当参数值为True时,说明条件成立;当参数值为False时,说明条件不成立。(如: 1==1 即为 True, 1==2 即为 False)
  • [条件成立时返回值1]:当第一个参数给出的条件成立时,返回第二个参数的值;
  • [条件不成立时返回值2]:当第一个参数给出的条件不成立,返回第三个参数的值。

if公式使用案例

比较字符串是否相同

假如我们现在有一份工作事项清单,里面有多项紧急程度不同的事项,分为紧急和一般2个等级,如下图所示:

工作事项分为紧急、一般两种程度
工作事项分为紧急、一般两种程度

现在我们想再新建一个数值类型的属性,用来判断当前事项的紧急程度,如果紧急则数值为2,如果一般则数值为1。如下图所示:

根据紧急程度,紧急项目数值为2,一般项目数值为1
根据紧急程度,紧急项目数值为2,一般项目数值为1

此时我们需要利用if()公式,判断事项的紧急程度是否等于“紧急”,如果是则返回1,否则返回2。公式如下:

判断字符串是否相等的if公式
判断字符串是否相等的if公式
				
					if(prop("紧急程度 ") == "紧急", 2, 1)
				
			

比较数值大小

if公式除了可以比较数值是否相同外,还能比较数值大小

新建一列,如果紧急程度大于1,则返回true,否则返回false

紧急程度大一1则返回true,否则返回false
紧急程度大一1则返回true,否则返回false
				
					if(prop("紧急程度(数值)") > 1, true, false)
				
			

if公式简写语法

if()公式还有一种简写方式,不需要写英文,只需要使用符号 ?: 即可。

简写语法:

				
					[条件] ? [条件成立时返回值1] : [条件不成立时返回的值2]

if(Boolean, Boolean, Boolean)
if(Boolean, String, String)
if(Boolean, Number, Number)
if(Boolean, Date, Date)
				
			
  • ? 左侧为第一个参数,即用来判断真假的条件;
  • ?: 之间的为第二个参数,如果条件为真则返回第二个参数的值;
  • : 右侧为第三个参数,如果条件不成立则返回第三个参数的值。
if公式简写语法
if公式简写语法

以下两个公式都是if公式,它们表达的含义是完全相同的:

				
					//默认语法
if(prop("紧急程度(数值)") > 1, true, false)

//简写语法
(prop("紧急程度(数值)") > 1) ? true : false
				
			

进阶用法:嵌套if

在实际工作中,if公式的用法会更加复杂,需要在if公式内嵌套更多的if公式

举个最简单的例子,在下面的表格中,工作事项的紧急程度被分为了非常紧急紧急一般3个等级。我们希望创建一个新列,根据事项紧急程度赋予数值:非常紧急-3,紧急-2,一般-1。如下图所示:

if公式嵌套用法
if公式嵌套用法

这里用到的if嵌套公式如下:

				
					if(prop("紧急程度 ") == "非常紧急", 3, if(prop("紧急程度 ") == "紧急", 2, 1))

//为了更容易理解,拆解公式如下
if(
    prop("紧急程度 ") == "非常紧急",
    3, 
    //当事项为非常紧急时,返回3,否则进入下一个if公式
    if(
        prop("紧急程度 ") == "紧急",
        2,
        1
    )
)
				
			

前往Notion网页版查看公式代码示例

我为本文中的所有代码示例创建了Notion实例,感兴趣的读者可以通过下方链接前往Notion网页版进行查看或复制:

Leave a Comment

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