📄️ 表达式
表达式是由值、运算符和函数组合而成的结构。表达式具有很强的可组合性,既可以非常简单,也可以任意复杂。它们会出现在 SQL 语句的许多不同位置。本节介绍可在表达式中使用的各类运算符和函数。
📄️ CASE 表达式
CASE 表达式会基于条件执行分支选择。其基本形式与许多编程语言中的三元条件表达式一致(CASE WHEN cond THEN a ELSE b END 等价于 cond ? a : b)。当只有一个条件时,也可以写成 IF(cond, a, b)。
📄️ 类型转换
类型转换是指将某一数据类型中的值转换为另一种数据类型中的对应值。
📄️ Collation
Collation 为执行引擎中的文本排序与比较提供规则。Collation 对本地化很有用,因为不同语言或不同国家/地区的文本排序规则并不相同,而且这些排序规则通常彼此不兼容。例如,在英语中,字母 y 位于 x 和 z 之间;而在立陶宛语中,字母 y 位于 i 和 j 之间。因此系统支持不同的 collation。用户在执行排序和比较操作时,必须选择要使用的 collation。
📄️ 比较运算
Comparison Operators
📄️ IN 运算符
IN 运算符用于检查左侧表达式是否包含在右侧(RHS)的集合中。
📄️ 星号表达式
语法
📄️ 子查询
子查询是用括号包裹的查询表达式,作为更大外层查询的一部分出现。子查询通常基于 SELECT ... FROM,但在 Goose 中,像 PIVOT 这样的其他查询结构也可以作为子查询出现。
📄️ TRY 表达式
TRY 表达式可确保:当子(标量)表达式因输入行导致错误时,这些行会返回 NULL,而不是让整个查询抛出错误。