<< Click to Display Table of Contents >> 逻辑函数 |
函数 |
语法 |
说明 |
举例 |
---|---|---|---|
and |
if <expr1> and <expr2> then <then> end |
对两个表达式执行逻辑上做并且的判断 |
例如: if (col['产品种类'] == "咖啡") and(col['省份'] == 001) then 1 else 2 end |
case |
case <expr> when <value1> then <return1> when <value2> then <return2> ... [else <else>] end |
执行逻辑测试并返回相应的值。case 函数可评估 expr,并将其与一系列值(value1、 value2 等)比较,然后返回结果 |
例如: case col['产品种类'] when "咖啡" then 1 when "茶" then 2 else 3 end |
else |
if <expr> then <then> [else <else>] end |
测试一系列表达式,同时为第一个为 true 的 <expr> 返回 <then> 值 |
例如: if (col['sales'] > 10000) then "高利润" then "保持成本" else "亏本" end |
elseif |
if <expr> then <then> [elseif <expr2> then <then2>...] [else <else>] end |
测试一系列表达式,同时为第一个为 true 的 <expr> 返回 <then> 值 |
例如: if (col['sales'] > 10000) then "高利润" elseif(col['sales'] < 10000 and col['sales'] > 1500) then "保持成本" else "亏本" end |
end |
if <expr> then <then> [elseif <expr2> then <then2>...] [else <else>] end |
测试一系列表达式,同时为第一个为 true 的 <expr> 返回 <then> 值。end必须放在表达式的结尾 |
例如: if (col['sales'] > 10000) then "高利润" elseif (col['sales'] < 10000 and col['sales'] > 1500) then "保持成本" else "亏本" end |
if |
if <expr> then <then> [elseif <expr2> then <then2>...] [else <else>] end |
测试一系列表达式,同时为第一个为 true 的 <expr> 返回 <then> 值 |
例如: if (col['sales'] > 10000) then "高利润" else if (col['sales'] < 10000 and col['sales'] > 1500) then "保持成本" else "亏本" end |
ifnull |
ifnull(expr1, expr2) |
如果 <expr1> 不为 null,则返回该表达式expr1,否则返回 <expr2> |
例如: ifnull(col['Profit'], 0) |
iif |
iif(expr,return1,return2) |
检查某个条件是否得到满足,如果为 true 则返回一个值,如果为 false 则返回另一个值,如果未知,则返回可选的第三个值或 null |
例如: iif (col['sales']>6,3,1),如果此列的值大于6就返回3,否则返回1 |
isNull |
isNull(expression) |
如果表达式未包含有效数据 (null),则返回 true |
例如: isNull(col['Profit'])=false |
isNumber |
isNumber(expression) |
检测对象是否是数值类型,数值类型返回true,否则返回false |
例如: isNumber("work")=false |
not |
if not <expr> then <then> end |
对一个表达式执行逻辑非运算。 |
例如: if not (col['profit'] > 0) then "unprofitable" end |
or |
if <expr1> or <expr2> then <then1> end |
对两个表达式执行或者的条件判断 |
例如: if col['Profit'] < 0 or col['Profit'] == 0 then "没有盈利" end |
then |
if <expre> then <then> [elseif ,expr2> then <then2>...] [else <else>] end |
测试一系列表达式的逻辑条件,符合条件的用then子句去判断返回值 |
例如: if (col['sales'] > 10000) then "高利润" elseif (col['sales'] < 10000 and col['sales'] > 1500) then "保持成本" else "亏本" end |
when |
case <expr> when <value1> then <return1> ... [else <else>] end |
查找第一个与 <expr> 匹配的 <value>,并返回对应的 <return> |
例如: case col['Procut_Name'] when 'Tea' then 1 when 'Coffee' then 2 else 3 end |