前置条件
计算列函数,数据库适配情况,查看:计算列函数数据库适配情况。
1.IIF
类别 | 描述 |
---|---|
函数写法 | IIF(logical,expr1,expr2) |
函数作用 | 一种常用的条件函数,条件判断:条件为真,返回参数expr1,否则返回参数expr2。 |
参数说明 | logical:条件表达式。 expr1:条件为真的返回值。 expr2:条件为否的返回值,同expr1。 |
示例 | 1、假设有一个名为 Employees 的表,其中包含一个名为 Salary 的列,存储员工的薪资。我们想要根据员工的薪资是否超过 5000 来判断其薪资级别。可以使用 IF 函数来实现: |
2.AND
类别 | 描述 |
---|---|
函数写法 | AND(exps) |
函数作用 | 当所有参数的值为真时,返回1;当任意参数的值为假时,返回0。 |
参数说明 | exps:表达式支持bool类型、数值类型,支持多个参数。 |
示例 | 1、假设有一个名为 Employees 的表,其中包含 Salary 和 Department 两列, |
3.SWITCH
类别 | 描述 |
---|---|
函数写法 | SWITCH(表达式,值1,结果1,值2,结果2,……,其他结果)。 |
函数作用 | 可对多种情况进行判断,并根据不同的值返回对应结果 |
参数说明 | 参数1:表达式 参数2:结果 |
示例 | 1、SWITCH(1+2,3,'今天星期三',4,'今天星期四')。 |
4.ISNOTNULL
类别 | 描述 |
---|---|
函数写法 | ISNOTNULL(expr) |
函数作用 | 判断表达式的值是否为非空null,返回一个布尔值,如果表达式的值式非null,返回true(1),否则返回false(0)。 |
参数说明 | expr:要进行判断的表达式或者列名。 |
示例 | 1、从产品表中判断库存数量(stock_quantity)是否为非null?ISNOTNULL([stock_quantity])如果有一个产品的库存数量为非null返回1,否则返回0。 |
5.IFNULL
类别 | 描述 |
---|---|
函数写法 | IFNULL(logical,expr) |
函数作用 | 判断表达式的值是否为 NULL,并在值为 NULL 的情况下返回指定的替代值。如果表达式的值不为 NULL,则返回原始值; 注意,exp1和exp2不能同时为null,可能会导致运行错误。 |
参数说明 | logical:是要进行判断的表达式或列名。 expr: 是当 expression 的值为 NULL 时要返回的替代值。 |
示例 | 1、产品表中选择产品名称(product_name)和库存数量(stock_quantity),如果库存数量为 NULL,则将其替换为 0 |
6.ISNULL
类别 | 描述 |
---|---|
函数写法 | ISNULL(expr) |
函数作用 | 用于判断表达式的值是否为 NULL。它返回一个布尔值,如果表达式的值是 NULL,则返回 true(1),否则返回 false(0)。 |
参数说明 | expr:是要进行判断的表达式或列名。 |
示例 | 从产品表中选择产品名称(product_name)以及库存数量(stock_quantity)是否为 NULL 的判断结果 |
7.OR
类别 | 描述 |
---|---|
函数写法 | OR(exps) |
函数作用 | 是一个逻辑运算符,用于在条件语句中连接多个条件,当存在一个参数的值为真时,返回1;当所有参数的值为假时,返回0。 |
参数说明 | exps: 是待比较的条件表达式,如果其中至少有一个条件为真,则整个表达式的结果为真(1);只有当所有条件都为假时,整个表达式的结果才为假(0)。 |
示例 | 假设有一个名为 employees 的表,其中包含员工的姓名(name)和薪资(salary)两列,希望筛选出薪资高于10000或在特定部门工作的员工。 OR([salary] > 10000, [department] = 'IT') |