条件表达式
适用于 ✅ 开源版 ✅ 专业版 ✅ 企业版
条件或条件表达式在 SQL 和 jOOQ API 中被广泛使用。 它们可以用于
- CASE 表达式
- JOIN 子句(或者更准确地说,
JOIN .. ON
子句)的 SELECT 语句、UPDATE 语句、DELETE 语句 - WHERE 子句 的 SELECT 语句、UPDATE 语句、DELETE 语句
- CONNECT BY 子句 的 SELECT 语句
- HAVING 子句 的 SELECT 语句
- MERGE 语句的 ON 子句
SQL 中的布尔类型
在 SQL:1999 之前,布尔类型在 SQL 中并不真正存在。 它们由 0 和 1 数字/字符值建模。 随着 SQL:1999 的出现,引入了真正的布尔值,现在大多数数据库都支持它。 简而言之,这些是可能的布尔值
-
1
或TRUE
-
0
或FALSE
-
NULL
或UNKNOWN
重要的是要知道 SQL 在解释 NULL
布尔值的方式上与许多其他语言不同。 最重要的是,要记住以下事实
-
[ANY] = NULL
产生NULL
(不是FALSE
) -
[ANY] != NULL
产生NULL
(不是TRUE
) -
NULL = NULL
产生NULL
(不是TRUE
) -
NULL != NULL
产生NULL
(不是FALSE
)
为了简化 NULL
处理,请参阅有关 DISTINCT 谓词的部分。
请注意,jOOQ 不会将这些值建模为实际的 列表达式兼容。
目录
- 3.12.1.
- 条件构建
- 3.12.2.
- TRUE和FALSE条件
- 3.12.3.
- 布尔列
- 3.12.4.
- AND, OR, NOT布尔运算符
- 3.12.5.
- 布尔运算符优先级
- 3.12.6.
- XOR布尔运算符
- 3.12.7.
- 比较谓词
- 3.12.8.
- 比较谓词 (degree > 1)
- 3.12.9.
- 量化比较谓词
- 3.12.10.
- BETWEEN谓词
- 3.12.11.
- BETWEEN谓词 (degree > 1)
- 3.12.12.
- DISTINCT谓词
- 3.12.13.
- DISTINCT谓词 (degree > 1)
- 3.12.14.
- DOCUMENT谓词
- 3.12.15.
- EXISTS谓词
- 3.12.16.
- IN谓词
- 3.12.17.
- IN谓词 (degree > 1)
- 3.12.18.
- JSON谓词
- 3.12.19.
- JSON_EXISTS谓词
- 3.12.20.
- LIKE谓词
- 3.12.21.
- LIKE谓词 (binary) (新增)
- 3.12.22.
- LIKE REGEX谓词
- 3.12.23.
- 量化LIKE谓词
- 3.12.24.
- 量化LIKE谓词 (binary) (新增)
- 3.12.25.
- NULL谓词
- 3.12.26.
- NULL谓词 (degree > 1)
- 3.12.27.
- OVERLAPS谓词
- 3.12.28.
- SIMILAR TO谓词
- 3.12.29.
- 空间谓词
- 3.12.29.1.
- ST_Contains
- 3.12.29.2.
- ST_Crosses
- 3.12.29.3.
- ST_Disjoint
- 3.12.29.4.
- ST_Equals
- 3.12.29.5.
- ST_Intersects
- 3.12.29.6.
- ST_IsClosed
- 3.12.29.7.
- ST_IsEmpty
- 3.12.29.8.
- ST_IsRing (新增)
- 3.12.29.9.
- ST_IsSimple (新增)
- 3.12.29.10.
- ST_IsValid (新增)
- 3.12.29.11.
- ST_Overlaps
- 3.12.29.12.
- ST_Touches
- 3.12.29.13.
- ST_Within
- 3.12.30.
- UNIQUE谓词
- 3.12.31.
- XMLEXISTS谓词
- 3.12.32.
- 示例查询 (QBE)
previous : next |
引用此页
- 查询DSL类型
- 可变性(历史)
- SELECT 语句中使用的 JOIN 运算符
- SELECT 语句的 WHERE 子句
- UPDATE 语句的 WHERE 子句
- DELETE 语句的 WHERE 子句
- WHEN MATCHED AND ..
- WHEN NOT MATCHED AND ..
- 位函数
- JSON函数
- XML函数
- 元组或行值表达式
- 构建条件表达式
- TRUE和FALSE条件
- AND、OR、NOT 布尔运算符
- EXISTS 谓词
- IN 谓词
- NULL 谓词
- 动态SQL
- 用于动态 SQL 的可选列表达式
- 用于动态 SQL 的可选条件表达式
- 普通的 SQL API
- 使用这个简单的 SPI 扩展 jOOQ 解析器
- 基于模式的转换:琐碎的谓词
- 策略
- Kotlin BOOLEAN值表达式
- 代码生成配置:覆盖 where()
- BOOLEAN 数据类型
反馈
您对此页面有任何反馈吗? 我们很乐意听取您的意见!