or:逻辑或运算
速查结论
expr1 or expr2 是 Spark SQL 中用于对两个布尔表达式执行逻辑或(OR)运算的运算符。
语法
expr1 or expr2
参数说明
| 参数 | 说明 |
|---|---|
| expr1 | 布尔表达式。 |
| expr2 | 布尔表达式。 |
返回说明
- 任一操作数为 true 时返回 true。
- 两个操作数都为 false 时返回 false。
- 操作数不含 true 但任一为 NULL 时返回 NULL。
- 一个操作数为 NULL、另一个为 true 时返回 true。
示例
> SELECT true or false;
true
> SELECT false or false;
false
> SELECT true or NULL;
true
> SELECT false or NULL;
NULL
常见报错与避坑指南
- NULL 参与的运算:
false or NULL返回 NULL 而非 false,在 WHERE 条件中可能导致预期外的过滤行为。如果需要明确处理 NULL,请使用coalesce(expr, false)包装。 - 非布尔类型:or 两侧必须是布尔表达式。传入整数或字符串等非布尔类型会报错。
Since: 1.0.0
📱关注公众号
「数据仓库技术」文章同步更新,不错过每一篇干货

💬加群交流
备注「数据仓库技术」加入社群,每日一道大厂SQL真题
