Entity SQL 参考
本节包含 Entity SQL 参考主题。 本主题总结 Entity SQL 运算符并按类别对其分组。
算术运算符
算术运算符对两个表达式执行数学运算,这两个表达式可以是一个或多个数值数据类型。 下表列出了 Entity SQL 算术运算符。
运算符 | 用途 |
---|---|
加法。 |
|
除法。 |
|
返回除法运算的余数。 |
|
乘法。 |
|
求反。 |
|
减法。 |
规范函数
所有数据提供程序都支持规范函数,并且所有查询技术都可以使用规范函数。 下表列出了规范函数。
函数 | 类型 |
---|---|
讨论 Entity SQL 聚合规范函数。 |
|
讨论 Entity SQL 数学规范函数。 |
|
讨论 Entity SQL 字符串规范函数。 |
|
讨论 Entity SQL 日期和时间规范函数。 |
|
讨论 Entity SQL 按位规范函数。 |
|
讨论未分类为按位、日期/时间、字符串、数字或聚合函数的函数。 |
比较运算符
比较运算符适用于下列类型:Byte、Int16、Int32、Int64、Double、Single、Decimal、String、DateTime、Date、Time、DateTimeOffset。 应用比较运算符之前将对操作数进行隐性类型升级。 比较运算符总是生成布尔值。 如果操作数中至少有一个 null,则结果为 null。
相等和不相等适用于有标识的所有对象类型,如 Boolean 类型。 拥有相同标识的非基元对象被视为相等。 下表列出了 Entity SQL 比较运算符。
运算符 | 说明 |
---|---|
比较两个表达式是否相等。 |
|
比较两个表达式以确定左侧表达式的值是否大于右侧表达式的值。 |
|
比较两个表达式以确定左侧表达式的值是否大于或等于右侧表达式的值。 |
|
确定查询表达式是否为 null。 |
|
比较两个表达式以确定左侧表达式的值是否小于右侧表达式的值。 |
|
比较两个表达式以确定左侧表达式的值是否小于或等于右侧表达式的值。 |
|
确定表达式的结果值是否在指定范围内。 |
|
比较两个表达式以确定左侧表达式是否不等于右侧表达式。 |
|
确定特定字符串是否与指定的模式匹配。 |
逻辑和 Case 表达式运算符
逻辑运算符测试条件的真实性。 CASE 表达式计算一组布尔表达式的值以确定结果。 下表列出了逻辑和 Case 表达式运算符。
运算符 | 说明 |
---|---|
逻辑与。 |
|
逻辑非。 |
|
逻辑或。 |
|
求出一组布尔表达式的值以确定结果。 |
|
指定 Entity SQL 语句的执行条件。 |
|
当 WHEN 子句取值为 true 时的结果。 |
|
求出一个或多个布尔表达式的值。 |
查询运算符
查询运算符用于定义返回实体数据的查询表达式。 下表列出了查询运算符。
运算符 | 用途 |
---|---|
指定 SELECT 语句中使用的集合。 |
|
指定由查询 (SELECT) 表达式返回的对象要分入的组。 |
|
返回从聚合与之相关的组分区提取的参数值集合。 |
|
指定组或聚合的搜索条件。 |
|
与 ORDER BY 子句一起使用,以执行物理分页。 |
|
指定用于 SELECT 语句所返回的对象的排序顺序。 |
|
指定投影中由查询返回的元素。 |
|
与 ORDER BY 子句一起使用,以执行物理分页。 |
|
指定查询结果中将只返回第一组行。 |
|
按条件筛选由查询返回的数据。 |
引用运算符
引用是指向特定实体集中的特定实体的逻辑指针(外键)。 Entity SQL 支持使用以下运算符对引用进行构造、解构和导航:
运算符 | 用途 |
---|---|
创建对实体集中的实体的引用。 |
|
取消引用一个引用值,并生成该取消引用的结果。 |
|
提取引用或实体表达式的键。 |
|
使您可以从一个实体类型到另一个实体类型对关系进行导航 |
|
返回对实体实例的引用。 |
集合运算符
Entity SQL 提供了各种功能强大的集运算符。 这包括与 Transact-SQL 运算符类似的集运算符,例如 UNION、INTERSECT、EXCEPT 和 EXISTS。 Entity SQL 还支持用于清除重复项 (SET)、成员身份测试 (IN) 和联接 (JOIN) 的运算符。 下表列出了 Entity SQL 集运算符。
运算符 | 用途 |
---|---|
从多值集合中提取元素。 |
|
返回由 EXCEPT 操作数左侧的查询表达式返回而不由 EXCEPT 操作数右侧的查询表达式返回的任何非重复值的集合。 |
|
确定集合是否为空。 |
|
将一个由多个集合组成的集合转换为一个平展集合。 |
|
确定某个值是否与某个集合中的任何值匹配。 |
|
返回 INTERSECT 操作数左右两边的两个查询表达式均返回的所有非重复值的集合。 |
|
确定两个集合是否具有公共元素。 |
|
用于通过生成一个新集合(其中移除了所有重复元素)将对象集合转换为一个集。 |
|
将两个或更多查询的结果组合成单个集合。 |
类型运算符
Entity SQL 提供了用于构造、查询和操作表达式(值)的类型的运算。 下表列出了用于处理类型的运算符。
运算符 | 用途 |
---|---|
将一种数据类型的表达式转换为另一种数据类型的表达式。 |
|
用于 FUNCTION 操作中,以声明实体类型或复杂类型的集合。 |
|
确定表达式的类型是否为指定类型或指定类型的某个子类型。 |
|
从查询表达式返回特定类型的对象集合。 |
|
用于创建实体类型或复杂类型的实例。 |
|
根据值列表创建多集的实例。 |
|
从一个或多个值构造结构上类型化的匿名记录。 |
|
将特定基类型的对象视为指定派生类型的对象。 |
其他运算符
下表列出了其他 Entity SQL 运算符。
运算符 | 用途 |
---|---|
用于在 Entity SQL 中串联字符串。 |
|
用于访问结构化概念模型类型实例的属性或字段的值。 |
|
包括 Entity SQL 注释。 |
|
定义可在 Entity SQL 查询中执行的内联函数。 |