列表达式
适用于 ✅ 开源版 ✅ 专业版 ✅ 企业版
列表达式可用于各种 SQL 子句中,以引用一个或多个列。本章介绍如何使用 jOOQ 形成各种类型的列表达式。特定类型的列表达式在关于元组或行值表达式的部分中给出,其中表达式可能具有多个维度。
在 jOOQ 中使用列表达式
jOOQ 允许您使用流畅的表达式构造 API 自由地创建任意列表达式。许多表达式可以由DSL 方法的函数构成,其他表达式可以基于预先存在的列表达式构成。例如
// A regular table column expression Field<String> field1 = BOOK.TITLE; // A function created from the DSL Field<String> field2 = trim(BOOK.TITLE); // More complex function with advanced DSL syntax Field<String> field4 = listAgg(BOOK.TITLE) .withinGroupOrderBy(BOOK.ID.asc()) .over().partitionBy(AUTHOR.ID);
目录
- 3.11.1.
- 表列
- 3.11.1.1.
- 生成的表列
- 3.11.1.2.
- 解引用的表列
- 3.11.1.3.
- 命名的表列
- 3.11.2.
- 别名列
- 3.11.3.
- 转换表达式
- 3.11.4.
- 转换表达式 (带TRY_CAST)
- 3.11.5.
- 数据类型转换
- 3.11.6.
- 隐藏列 (新增)
- 3.11.7.
- 只读列
- 3.11.8.
- 计算列
- 3.11.9.
- 排序规则
- 3.11.10.
- 算术表达式
- 3.11.11.
- 字符串连接
- 3.11.12.
- 字符串大小写敏感性
- 3.11.13.
- 通用函数
- 3.11.13.1.
- CHOOSE
- 3.11.13.2.
- COALESCE
- 3.11.13.3.
- DECODE
- 3.11.13.4.
- IIF
- 3.11.13.5.
- NULLIF
- 3.11.13.6.
- NVL
- 3.11.13.7.
- NVL2
- 3.11.14.
- 数值函数
- 3.11.14.1.
- ABS
- 3.11.14.2.
- ACOS
- 3.11.14.3.
- ASIN
- 3.11.14.4.
- ATAN
- 3.11.14.5.
- ATAN2
- 3.11.14.6.
- CEIL
- 3.11.14.7.
- COS
- 3.11.14.8.
- COSH
- 3.11.14.9.
- COT
- 3.11.14.10.
- COTH
- 3.11.14.11.
- DEG
- 3.11.14.12.
- E
- 3.11.14.13.
- EXP
- 3.11.14.14.
- FLOOR
- 3.11.14.15.
- GREATEST
- 3.11.14.16.
- LEAST
- 3.11.14.17.
- LN
- 3.11.14.18.
- LOG
- 3.11.14.19.
- LOG10
- 3.11.14.20.
- NEG
- 3.11.14.21.
- PI
- 3.11.14.22.
- POWER
- 3.11.14.23.
- RAD
- 3.11.14.24.
- RAND
- 3.11.14.25.
- ROUND
- 3.11.14.26.
- SIGN
- 3.11.14.27.
- SIN
- 3.11.14.28.
- SINH
- 3.11.14.29.
- SQRT
- 3.11.14.30.
- SQUARE
- 3.11.14.31.
- TAN
- 3.11.14.32.
- TANH
- 3.11.14.33.
- TRUNC
- 3.11.14.34.
- WIDTH_BUCKET
- 3.11.15.
- 位函数
- 3.11.15.1.
- BIT_AND
- 3.11.15.2.
- BIT_COUNT
- 3.11.15.3.
- BIT_GET
- 3.11.15.4.
- BIT_NAND
- 3.11.15.5.
- BIT_NOR
- 3.11.15.6.
- BIT_NOT
- 3.11.15.7.
- BIT_OR
- 3.11.15.8.
- BIT_SET
- 3.11.15.9.
- BIT_XNOR
- 3.11.15.10.
- BIT_XOR
- 3.11.15.11.
- SHL
- 3.11.15.12.
- SHR
- 3.11.16.
- 字符串函数
- 3.11.16.1.
- ASCII
- 3.11.16.2.
- BIN_TO_UUID (新增)
- 3.11.16.3.
- BIT_LENGTH
- 3.11.16.4.
- CHR
- 3.11.16.5.
- CONCAT (|| 运算符)
- 3.11.16.6.
- DIGITS
- 3.11.16.7.
- LEFT
- 3.11.16.8.
- LENGTH
- 3.11.16.9.
- LOWER
- 3.11.16.10.
- LPAD
- 3.11.16.11.
- LTRIM
- 3.11.16.12.
- MD5
- 3.11.16.13.
- MID
- 3.11.16.14.
- OCTET_LENGTH
- 3.11.16.15.
- OVERLAY
- 3.11.16.16.
- POSITION
- 3.11.16.17.
- REGEXP_REPLACE
- 3.11.16.18.
- REPEAT
- 3.11.16.19.
- REPLACE
- 3.11.16.20.
- REVERSE
- 3.11.16.21.
- RIGHT
- 3.11.16.22.
- RPAD
- 3.11.16.23.
- RTRIM
- 3.11.16.24.
- SPACE
- 3.11.16.25.
- SPLIT_PART
- 3.11.16.26.
- SUBSTRING
- 3.11.16.27.
- SUBSTRING_INDEX
- 3.11.16.28.
- TO_CHAR
- 3.11.16.29.
- TO_HEX
- 3.11.16.30.
- TRANSLATE
- 3.11.16.31.
- TRIM
- 3.11.16.32.
- UPPER
- 3.11.16.33.
- UUID
- 3.11.16.34.
- UUID_TO_BIN (新增)
- 3.11.17.
- 二进制函数 (新增)
- 3.11.17.1.
- BIT_LENGTH (binary) (新增)
- 3.11.17.2.
- CONCAT (binary, || operator) (新增)
- 3.11.17.3.
- LENGTH (binary) (新增)
- 3.11.17.4.
- LTRIM (binary) (新增)
- 3.11.17.5.
- MD5 (binary) (新增)
- 3.11.17.6.
- OCTET_LENGTH (binary) (新增)
- 3.11.17.7.
- OVERLAY (binary) (新增)
- 3.11.17.8.
- POSITION (binary) (新增)
- 3.11.17.9.
- RTRIM (binary) (新增)
- 3.11.17.10.
- SUBSTRING (binary) (新增)
- 3.11.17.11.
- TRIM (binary) (新增)
- 3.11.18.
- 日期时间函数
- 3.11.18.1.
- CENTURY
- 3.11.18.2.
- CURRENT_DATE
- 3.11.18.3.
- CURRENT_LOCALDATE
- 3.11.18.4.
- CURRENT_LOCALDATETIME
- 3.11.18.5.
- CURRENT_LOCALTIME
- 3.11.18.6.
- CURRENT_OFFSETDATETIME
- 3.11.18.7.
- CURRENT_OFFSETTIME
- 3.11.18.8.
- CURRENT_TIME
- 3.11.18.9.
- CURRENT_TIMESTAMP
- 3.11.18.10.
- DATE
- 3.11.18.11.
- DATEADD
- 3.11.18.12.
- DATEDIFF
- 3.11.18.13.
- DATESUB
- 3.11.18.14.
- DAY
- 3.11.18.15.
- DAY_OF_YEAR
- 3.11.18.16.
- DECADE
- 3.11.18.17.
- EPOCH
- 3.11.18.18.
- EXTRACT
- 3.11.18.19.
- HOUR
- 3.11.18.20.
- ISO_DAY_OF_WEEK
- 3.11.18.21.
- LOCALDATE
- 3.11.18.22.
- LOCALDATEADD
- 3.11.18.23.
- LOCALDATESUB
- 3.11.18.24.
- LOCALDATETIME
- 3.11.18.25.
- LOCALDATETIMEADD
- 3.11.18.26.
- LOCALDATETIMESUB
- 3.11.18.27.
- LOCALTIME
- 3.11.18.28.
- MILLENNIUM
- 3.11.18.29.
- MINUTE
- 3.11.18.30.
- MONTH
- 3.11.18.31.
- QUARTER
- 3.11.18.32.
- SECOND
- 3.11.18.33.
- TIME
- 3.11.18.34.
- TIMESTAMP
- 3.11.18.35.
- TIMESTAMPADD
- 3.11.18.36.
- TIMESTAMPSUB
- 3.11.18.37.
- TO_DATE
- 3.11.18.38.
- TO_LOCALDATE
- 3.11.18.39.
- TO_LOCALDATETIME
- 3.11.18.40.
- TO_TIMESTAMP
- 3.11.18.41.
- TRUNC
- 3.11.18.42.
- YEAR
- 3.11.19.
- 数组函数
- 3.11.19.1.
- ARRAY_ALL_MATCH (新增)
- 3.11.19.2.
- ARRAY_ANY_MATCH (新增)
- 3.11.19.3.
- ARRAY_APPEND (|| 运算符)
- 3.11.19.4.
- ARRAY_CONCAT (|| 运算符)
- 3.11.19.5.
- ARRAY_FILTER (新增)
- 3.11.19.6.
- ARRAY_GET
- 3.11.19.7.
- ARRAY_MAP (新增)
- 3.11.19.8.
- ARRAY_NONE_MATCH (新增)
- 3.11.19.9.
- ARRAY_OVERLAP
- 3.11.19.10.
- ARRAY_PREPEND (|| 运算符)
- 3.11.19.11.
- ARRAY_REMOVE
- 3.11.19.12.
- ARRAY_REPLACE
- 3.11.19.13.
- 数组构造函数
- 3.11.19.14.
- 来自子查询的数组构造函数
- 3.11.19.15.
- CARDINALITY
- 3.11.20.
- JSON函数
- 3.11.20.1.
- JSON_ARRAY
- 3.11.20.2.
- JSON_ARRAY_LENGTH (新增)
- 3.11.20.3.
- JSON_INSERT
- 3.11.20.4.
- JSON_KEY_EXISTS (新增)
- 3.11.20.5.
- JSON_KEYS
- 3.11.20.6.
- JSON_OBJECT
- 3.11.20.7.
- JSON_REMOVE
- 3.11.20.8.
- JSON_REPLACE
- 3.11.20.9.
- JSON_SET
- 3.11.20.10.
- JSON_VALUE
- 3.11.20.11.
- 使用->或->>访问JSON数组元素
- 3.11.20.12.
- 使用->或->>访问JSON对象属性
- 3.11.21.
- XML函数
- 3.11.21.1.
- XMLATTRIBUTES
- 3.11.21.2.
- XMLCOMMENT
- 3.11.21.3.
- XMLCONCAT
- 3.11.21.4.
- XMLDOCUMENT
- 3.11.21.5.
- XMLELEMENT
- 3.11.21.6.
- XMLFOREST
- 3.11.21.7.
- XMLPARSE
- 3.11.21.8.
- XMLPI
- 3.11.21.9.
- XMLQUERY
- 3.11.21.10.
- XMLSERIALIZE
- 3.11.22.
- CONNECT BY函数
- 3.11.22.1.
- CONNECT_BY_ISCYCLE
- 3.11.22.2.
- CONNECT_BY_ISLEAF
- 3.11.22.3.
- CONNECT_BY_ROOT
- 3.11.22.4.
- LEVEL
- 3.11.22.5.
- PRIOR
- 3.11.22.6.
- SYS_CONNECT_BY_PATH
- 3.11.23.
- 系统函数
- 3.11.23.1.
- CURRENT_CATALOG
- 3.11.23.2.
- CURRENT_SCHEMA
- 3.11.23.3.
- CURRENT_USER
- 3.11.24.
- 空间函数
- 3.11.24.1.
- ST_Area
- 3.11.24.2.
- ST_AsText
- 3.11.24.3.
- ST_Boundary (新增)
- 3.11.24.4.
- ST_Centroid
- 3.11.24.5.
- ST_Difference
- 3.11.24.6.
- ST_Dimension (新增)
- 3.11.24.7.
- ST_Distance
- 3.11.24.8.
- ST_EndPoint
- 3.11.24.9.
- ST_ExteriorRing
- 3.11.24.10.
- ST_GeometryN
- 3.11.24.11.
- ST_GeometryType
- 3.11.24.12.
- ST_GeomFromText
- 3.11.24.13.
- ST_InteriorRingN
- 3.11.24.14.
- ST_Intersection
- 3.11.24.15.
- ST_Length
- 3.11.24.16.
- ST_NumGeometries
- 3.11.24.17.
- ST_NumInteriorRings
- 3.11.24.18.
- ST_NumPoints
- 3.11.24.19.
- ST_Perimeter (新增)
- 3.11.24.20.
- ST_PointN
- 3.11.24.21.
- ST_SRID
- 3.11.24.22.
- ST_StartPoint
- 3.11.24.23.
- ST_Transform (新增)
- 3.11.24.24.
- ST_Union
- 3.11.24.25.
- ST_X
- 3.11.24.26.
- ST_XMax (新增)
- 3.11.24.27.
- ST_XMin (新增)
- 3.11.24.28.
- ST_Y
- 3.11.24.29.
- ST_YMax (新增)
- 3.11.24.30.
- ST_YMin (新增)
- 3.11.24.31.
- ST_Z
- 3.11.24.32.
- ST_ZMax (新增)
- 3.11.24.33.
- ST_ZMin (新增)
- 3.11.25.
- 聚合函数
- 3.11.25.1.
- 分组
- 3.11.25.2.
- Distinctness
- 3.11.25.3.
- 过滤
- 3.11.25.4.
- 排序
- 3.11.25.5.
- Ordering WITHIN GROUP
- 3.11.25.6.
- Keep
- 3.11.25.7.
- ANY_VALUE
- 3.11.25.8.
- ARRAY_AGG
- 3.11.25.9.
- AVG
- 3.11.25.10.
- LISTAGG (binary) (新增)
- 3.11.25.11.
- BIT_AND_AGG
- 3.11.25.12.
- BIT_NAND_AGG
- 3.11.25.13.
- BIT_NOR_AGG
- 3.11.25.14.
- BIT_OR_AGG
- 3.11.25.15.
- BIT_XOR_AGG
- 3.11.25.16.
- BIT_XNOR_AGG
- 3.11.25.17.
- BOOL_AND
- 3.11.25.18.
- BOOL_OR
- 3.11.25.19.
- COLLECT
- 3.11.25.20.
- COUNT
- 3.11.25.21.
- CUME_DIST
- 3.11.25.22.
- DENSE_RANK
- 3.11.25.23.
- EVERY
- 3.11.25.24.
- GROUP_CONCAT
- 3.11.25.25.
- JSON_ARRAYAGG
- 3.11.25.26.
- JSON_OBJECTAGG
- 3.11.25.27.
- LISTAGG
- 3.11.25.28.
- MAX
- 3.11.25.29.
- MAX_BY (新增)
- 3.11.25.30.
- MEDIAN
- 3.11.25.31.
- MIN
- 3.11.25.32.
- MIN_BY (新增)
- 3.11.25.33.
- MODE
- 3.11.25.34.
- MULTISET_AGG
- 3.11.25.35.
- PERCENT_RANK
- 3.11.25.36.
- PERCENTILE_CONT
- 3.11.25.37.
- PERCENTILE_DISC
- 3.11.25.38.
- PRODUCT
- 3.11.25.39.
- RANK
- 3.11.25.40.
- SUM
- 3.11.25.41.
- XMLAGG
- 3.11.26.
- 窗口函数
- 3.11.26.1.
- PARTITION BY
- 3.11.26.2.
- ORDER BY
- 3.11.26.3.
- ROWS, RANGE, GROUPS (frame clause)
- 3.11.26.4.
- EXCLUDE
- 3.11.26.5.
- NULL 处理
- 3.11.26.6.
- FROM FIRST, FROM LAST
- 3.11.26.7.
- 嵌套聚合函数
- 3.11.26.8.
- 窗口聚合
- 3.11.26.9.
- 窗口有序聚合
- 3.11.26.10.
- ROW_NUMBER
- 3.11.26.11.
- RANK
- 3.11.26.12.
- DENSE_RANK
- 3.11.26.13.
- PERCENT_RANK
- 3.11.26.14.
- CUME_DIST
- 3.11.26.15.
- NTILE
- 3.11.26.16.
- LEAD
- 3.11.26.17.
- LAG
- 3.11.26.18.
- FIRST_VALUE
- 3.11.26.19.
- LAST_VALUE
- 3.11.26.20.
- NTH_VALUE
- 3.11.27.
- 用户定义函数
- 3.11.28.
- 用户定义聚合函数
- 3.11.29.
- 用户定义类型属性路径
- 3.11.30.
- CASE表达式
- 3.11.31.
- 序列和自增列
- 3.11.32.
- 标量子查询
- 3.11.33.
- 数组值构造函数
- 3.11.34.
- MULTISET值构造函数
- 3.11.35.
- 元组或行值表达式
- 3.11.36.
- 嵌套记录
上一节 : 下一节 |
引用此页
- jOOQ 作为不进行代码生成的 SQL 构建器
- jOOQ 和向后兼容性
- 查询DSL类型
- 可变性(历史)
- WITH RECURSIVE子句
- 在 jOOQ 的 SELECT 子句中使用 SelectField 类型
- SELECT 子句的便捷方法
- SELECT 语句的 ORDER BY 子句
- 在 ORDER BY 中使用 CASE 表达式进行排序间接引用
- CREATE FUNCTION 语句
- 创建标量函数
- 过程逻辑:变量
- 派生表
- 表列
- 生成的表列
- 用户定义函数
- CASE表达式
- 标量子查询
- 条件表达式
- 构建条件表达式
- 用于大于 1 的度数的比较谓词
- LIKE 谓词
- LIKE 谓词(二进制)
- NULL 谓词
- SIMILAR TO 谓词
- 动态SQL
- 用于动态 SQL 的可选列表达式
- 用于动态 SQL 的可选条件表达式
- 普通的 SQL API
- 使用这个简单的 SPI 扩展 jOOQ 解析器
- 名称和标识符
- 自定义数据类型绑定
- 基于模式的转换:标准化字段与值的比较
- 自定义数据类型转换
- 从查询上下文中查找数据类型
- 存储过程和函数
- 代码生成配置:客户端计算列
- BOOLEAN 数据类型
反馈
您对此页面有任何反馈吗? 我们很乐意倾听!