diff --git a/jOOQ/src/main/java/org/jooq/impl/QOM.java b/jOOQ/src/main/java/org/jooq/impl/QOM.java index 273a7449bf..76baf94eb5 100644 --- a/jOOQ/src/main/java/org/jooq/impl/QOM.java +++ b/jOOQ/src/main/java/org/jooq/impl/QOM.java @@ -994,6 +994,9 @@ public final class QOM { + /** + * The ALTER DATABASE statement. + */ public /*sealed*/ interface AlterDatabase extends DDLQuery @@ -1008,6 +1011,9 @@ public final class QOM { @NotNull AlterDatabase $renameTo(Catalog renameTo); } + /** + * The ALTER DOMAIN statement. + */ public /*sealed*/ interface AlterDomain extends DDLQuery @@ -1044,6 +1050,9 @@ public final class QOM { @NotNull AlterDomain $renameConstraintTo(Constraint renameConstraintTo); } + /** + * The ALTER INDEX statement. + */ public /*sealed*/ interface AlterIndex extends DDLQuery @@ -1060,6 +1069,9 @@ public final class QOM { @NotNull AlterIndex $renameTo(Index renameTo); } + /** + * The ALTER SCHEMA statement. + */ public /*sealed*/ interface AlterSchema extends DDLQuery @@ -1074,6 +1086,9 @@ public final class QOM { @NotNull AlterSchema $renameTo(Schema renameTo); } + /** + * The ALTER SEQUENCE statement. + */ public /*sealed*/ interface AlterSequence extends DDLQuery @@ -1110,6 +1125,9 @@ public final class QOM { @NotNull AlterSequence $noCache(boolean noCache); } + /** + * The ALTER TYPE statement. + */ public /*sealed*/ interface AlterType extends DDLQuery @@ -1130,6 +1148,9 @@ public final class QOM { @NotNull AlterType $renameValueTo(Field renameValueTo); } + /** + * The ALTER VIEW statement. + */ public /*sealed*/ interface AlterView extends DDLQuery @@ -1146,6 +1167,9 @@ public final class QOM { @NotNull AlterView $renameTo(Table renameTo); } + /** + * The COMMENT ON TABLE statement. + */ public /*sealed*/ interface CommentOn extends DDLQuery @@ -1162,6 +1186,9 @@ public final class QOM { @NotNull CommentOn $comment(Comment comment); } + /** + * The CREATE DATABASE statement. + */ public /*sealed*/ interface CreateDatabase extends DDLQuery @@ -1174,6 +1201,9 @@ public final class QOM { @NotNull CreateDatabase $ifNotExists(boolean ifNotExists); } + /** + * The CREATE DOMAIN statement. + */ public /*sealed*/ interface CreateDomain extends DDLQuery @@ -1221,6 +1251,12 @@ public final class QOM { + + + + /** + * The CREATE INDEX statement. + */ public /*sealed*/ interface CreateIndex extends DDLQuery @@ -1307,6 +1343,15 @@ public final class QOM { + + + + + + + /** + * The CREATE SCHEMA statement. + */ public /*sealed*/ interface CreateSchema extends DDLQuery @@ -1319,6 +1364,9 @@ public final class QOM { @NotNull CreateSchema $ifNotExists(boolean ifNotExists); } + /** + * The CREATE SEQUENCE statement. + */ public /*sealed*/ interface CreateSequence extends DDLQuery @@ -1349,6 +1397,9 @@ public final class QOM { @NotNull CreateSequence $noCache(boolean noCache); } + /** + * The DROP DATABASE statement. + */ public /*sealed*/ interface DropDatabase extends DDLQuery @@ -1361,6 +1412,9 @@ public final class QOM { @NotNull DropDatabase $ifExists(boolean ifExists); } + /** + * The DROP DOMAIN statement. + */ public /*sealed*/ interface DropDomain extends DDLQuery @@ -1390,6 +1444,12 @@ public final class QOM { + + + + /** + * The DROP INDEX statement. + */ public /*sealed*/ interface DropIndex extends DDLQuery @@ -1421,6 +1481,12 @@ public final class QOM { + + + + /** + * The DROP SCHEMA statement. + */ public /*sealed*/ interface DropSchema extends DDLQuery @@ -1435,6 +1501,9 @@ public final class QOM { @NotNull DropSchema $cascade(Cascade cascade); } + /** + * The DROP SEQUENCE statement. + */ public /*sealed*/ interface DropSequence extends DDLQuery @@ -1447,6 +1516,9 @@ public final class QOM { @NotNull DropSequence $ifExists(boolean ifExists); } + /** + * The DROP TABLE statement. + */ public /*sealed*/ interface DropTable extends DDLQuery @@ -1478,6 +1550,12 @@ public final class QOM { + + + + /** + * The DROP VIEW statement. + */ public /*sealed*/ interface DropView extends DDLQuery @@ -1490,6 +1568,9 @@ public final class QOM { @NotNull DropView $ifExists(boolean ifExists); } + /** + * The GRANT statement. + */ public /*sealed*/ interface Grant extends DDLQuery @@ -1508,6 +1589,9 @@ public final class QOM { @NotNull Grant $withGrantOption(boolean withGrantOption); } + /** + * The REVOKE statement. + */ public /*sealed*/ interface Revoke extends DDLQuery @@ -1526,6 +1610,11 @@ public final class QOM { @NotNull Revoke $fromPublic(boolean fromPublic); } + /** + * The SET statement. + *

+ * Set a vendor specific session configuration to a new value. + */ public /*sealed*/ interface SetCommand extends org.jooq.RowCountQuery @@ -1540,6 +1629,11 @@ public final class QOM { @NotNull SetCommand $local(boolean local); } + /** + * The SET CATALOG statement. + *

+ * Set the current catalog to a new value. + */ public /*sealed*/ interface SetCatalog extends org.jooq.RowCountQuery @@ -1550,6 +1644,11 @@ public final class QOM { @NotNull SetCatalog $catalog(Catalog catalog); } + /** + * The SET SCHEMA statement. + *

+ * Set the current schema to a new value. + */ public /*sealed*/ interface SetSchema extends org.jooq.RowCountQuery @@ -1560,6 +1659,9 @@ public final class QOM { @NotNull SetSchema $schema(Schema schema); } + /** + * The TRUNCATE statement. + */ public /*sealed*/ interface Truncate extends DDLQuery @@ -1589,6 +1691,14 @@ public final class QOM { + + + + + + /** + * The AND operator. + */ public /*sealed*/ interface And extends CombinedCondition @@ -1596,6 +1706,9 @@ public final class QOM { // And {} + /** + * The EQ operator. + */ public /*sealed*/ interface TableEq extends org.jooq.Condition, @@ -1604,6 +1717,9 @@ public final class QOM { // TableEq {} + /** + * The EQ operator. + */ public /*sealed*/ interface Eq extends CompareCondition @@ -1611,6 +1727,9 @@ public final class QOM { // Eq {} + /** + * The EXISTS function. + */ public /*sealed*/ interface Exists extends org.jooq.Condition @@ -1621,6 +1740,9 @@ public final class QOM { @NotNull Exists $query(Select query); } + /** + * The GE operator. + */ public /*sealed*/ interface Ge extends CompareCondition @@ -1628,6 +1750,9 @@ public final class QOM { // Ge {} + /** + * The GT operator. + */ public /*sealed*/ interface Gt extends CompareCondition @@ -1635,6 +1760,13 @@ public final class QOM { // Gt {} + /** + * The IN operator. + *

+ * The subquery must return exactly one field. This is not checked + * by jOOQ and will result in syntax errors in the database, if not used + * correctly. + */ public /*sealed*/ interface In extends org.jooq.Condition, @@ -1643,6 +1775,12 @@ public final class QOM { // In {} + /** + * The IS DISTINCT FROM operator. + *

+ * The DISTINCT predicate allows for creating NULL safe comparisons where the two operands + * are tested for non-equality + */ public /*sealed*/ interface IsDistinctFrom extends CompareCondition @@ -1650,6 +1788,9 @@ public final class QOM { // IsDistinctFrom {} + /** + * The IS NULL operator. + */ public /*sealed*/ interface IsNull extends org.jooq.Condition, @@ -1660,6 +1801,12 @@ public final class QOM { @NotNull default Field $field() { return $arg1(); } } + /** + * The IS NOT DISTINCT FROM operator. + *

+ * The NOT DISTINCT predicate allows for creating NULL safe comparisons where the two + * operands are tested for equality + */ public /*sealed*/ interface IsNotDistinctFrom extends CompareCondition @@ -1667,6 +1814,9 @@ public final class QOM { // IsNotDistinctFrom {} + /** + * The IS NOT NULL operator. + */ public /*sealed*/ interface IsNotNull extends org.jooq.Condition, @@ -1677,6 +1827,9 @@ public final class QOM { @NotNull default Field $field() { return $arg1(); } } + /** + * The LE operator. + */ public /*sealed*/ interface Le extends CompareCondition @@ -1684,6 +1837,9 @@ public final class QOM { // Le {} + /** + * The LIKE operator. + */ public /*sealed*/ interface Like extends Condition, @@ -1696,6 +1852,16 @@ public final class QOM { @Nullable default Character $escape() { return $arg3(); } } + /** + * The LIKE IGNORE CASE operator. + *

+ * Create a condition to case-insensitively pattern-check this field against + * a value. + *

+ * This translates to this not ilike value in + * {@link SQLDialect#POSTGRES}, or to + * lower(this) not like lower(value) in all other dialects. + */ public /*sealed*/ interface LikeIgnoreCase extends Condition, @@ -1708,6 +1874,9 @@ public final class QOM { @Nullable default Character $escape() { return $arg3(); } } + /** + * The LT operator. + */ public /*sealed*/ interface Lt extends CompareCondition @@ -1715,6 +1884,9 @@ public final class QOM { // Lt {} + /** + * The NE operator. + */ public /*sealed*/ interface TableNe extends org.jooq.Condition, @@ -1723,6 +1895,9 @@ public final class QOM { // TableNe {} + /** + * The NE operator. + */ public /*sealed*/ interface Ne extends CompareCondition @@ -1730,6 +1905,9 @@ public final class QOM { // Ne {} + /** + * The NOT operator. + */ public /*sealed*/ interface Not extends org.jooq.Condition, @@ -1740,6 +1918,9 @@ public final class QOM { @NotNull default Condition $condition() { return $arg1(); } } + /** + * The NOT operator. + */ public /*sealed*/ interface NotField extends org.jooq.Field, @@ -1750,6 +1931,17 @@ public final class QOM { @NotNull default Field $field() { return $arg1(); } } + /** + * The NOT IN operator. + *

+ * The subquery must return exactly one field. This is not checked + * by jOOQ and will result in syntax errors in the database, if not used + * correctly. + *

+ * If any of the passed values is NULL, then the + * condition will be NULL (or false, depending on + * the dialect) as well. This is standard SQL behaviour. + */ public /*sealed*/ interface NotIn extends org.jooq.Condition, @@ -1758,6 +1950,9 @@ public final class QOM { // NotIn {} + /** + * The NOT LIKE operator. + */ public /*sealed*/ interface NotLike extends Condition, @@ -1770,6 +1965,16 @@ public final class QOM { @Nullable default Character $escape() { return $arg3(); } } + /** + * The NOT LIKE IGNORE CASE operator. + *

+ * Create a condition to case-insensitively pattern-check this field against + * a value. + *

+ * This translates to this not ilike value in + * {@link SQLDialect#POSTGRES}, or to + * lower(this) not like lower(value) in all other dialects. + */ public /*sealed*/ interface NotLikeIgnoreCase extends Condition, @@ -1782,6 +1987,9 @@ public final class QOM { @Nullable default Character $escape() { return $arg3(); } } + /** + * The NOT SIMILAR TO operator. + */ public /*sealed*/ interface NotSimilarTo extends Condition, @@ -1794,6 +2002,9 @@ public final class QOM { @Nullable default Character $escape() { return $arg3(); } } + /** + * The OR operator. + */ public /*sealed*/ interface Or extends CombinedCondition @@ -1801,6 +2012,9 @@ public final class QOM { // Or {} + /** + * The SIMILAR TO operator. + */ public /*sealed*/ interface SimilarTo extends Condition, @@ -1813,6 +2027,9 @@ public final class QOM { @Nullable default Character $escape() { return $arg3(); } } + /** + * The UNIQUE function. + */ public /*sealed*/ interface Unique extends org.jooq.Condition @@ -1823,6 +2040,11 @@ public final class QOM { @NotNull Unique $query(Select query); } + /** + * The IS DOCUMENT operator. + *

+ * Create a condition to check if this field contains XML data. + */ public /*sealed*/ interface IsDocument extends org.jooq.Condition, @@ -1833,6 +2055,11 @@ public final class QOM { @NotNull default Field $field() { return $arg1(); } } + /** + * The IS NOT DOCUMENT operator. + *

+ * Create a condition to check if this field does not contain XML data. + */ public /*sealed*/ interface IsNotDocument extends org.jooq.Condition, @@ -1843,6 +2070,11 @@ public final class QOM { @NotNull default Field $field() { return $arg1(); } } + /** + * The IS JSON operator. + *

+ * Create a condition to check if this field contains JSON data. + */ public /*sealed*/ interface IsJson extends org.jooq.Condition, @@ -1853,6 +2085,11 @@ public final class QOM { @NotNull default Field $field() { return $arg1(); } } + /** + * The IS NOT JSON operator. + *

+ * Create a condition to check if this field does not contain JSON data. + */ public /*sealed*/ interface IsNotJson extends org.jooq.Condition, @@ -1863,6 +2100,31 @@ public final class QOM { @NotNull default Field $field() { return $arg1(); } } + /** + * The ROWID operator. + *

+ * Get a table.rowid reference from this table. + *

+ * A rowid value describes the physical location of a row on the disk, which + * can be used as a replacement for a primary key in some situations - + * especially within a query, e.g. to self-join a table: + *

+ *

+     * -- Emulating this MySQL statement...
+     * DELETE FROM x ORDER BY x.y LIMIT 1
+     *
+     * -- ... in other databases
+     * DELETE FROM x
+     * WHERE x.rowid IN (
+     *   SELECT x.rowid FROM x ORDER BY x.a LIMIT 1
+     * )
+     * 
+ *

+ * It is not recommended to use rowid values in client + * applications as actual row identifiers as the database system may move a + * row to a different physical location at any time, thus changing the rowid + * value. In general, use primary keys, instead. + */ public /*sealed*/ interface QualifiedRowid extends org.jooq.Field, @@ -1873,6 +2135,9 @@ public final class QOM { @NotNull default Table $table() { return $arg1(); } } + /** + * The ABS function. + */ public /*sealed*/ interface Abs extends org.jooq.Field @@ -1883,6 +2148,9 @@ public final class QOM { @NotNull Abs $number(Field number); } + /** + * The ACOS function. + */ public /*sealed*/ interface Acos extends org.jooq.Field @@ -1893,6 +2161,9 @@ public final class QOM { @NotNull Acos $number(Field number); } + /** + * The ADD operator. + */ public /*sealed*/ interface Add extends org.jooq.Field, @@ -1901,6 +2172,9 @@ public final class QOM { // Add {} + /** + * The ASIN function. + */ public /*sealed*/ interface Asin extends org.jooq.Field @@ -1911,6 +2185,9 @@ public final class QOM { @NotNull Asin $number(Field number); } + /** + * The ATAN function. + */ public /*sealed*/ interface Atan extends org.jooq.Field @@ -1921,6 +2198,9 @@ public final class QOM { @NotNull Atan $number(Field number); } + /** + * The ATAN2 function. + */ public /*sealed*/ interface Atan2 extends org.jooq.Field @@ -1933,6 +2213,9 @@ public final class QOM { @NotNull Atan2 $y(Field y); } + /** + * The BIT AND operator. + */ public /*sealed*/ interface BitAnd extends org.jooq.Field, @@ -1941,6 +2224,11 @@ public final class QOM { // BitAnd {} + /** + * The BIT COUNT function. + *

+ * Count the number of bits set in a number + */ public /*sealed*/ interface BitCount extends org.jooq.Field @@ -1951,6 +2239,9 @@ public final class QOM { @NotNull BitCount $number(Field number); } + /** + * The BIT NAND operator. + */ public /*sealed*/ interface BitNand extends org.jooq.Field, @@ -1959,6 +2250,9 @@ public final class QOM { // BitNand {} + /** + * The BIT NOR operator. + */ public /*sealed*/ interface BitNor extends org.jooq.Field, @@ -1967,6 +2261,9 @@ public final class QOM { // BitNor {} + /** + * The BIT NOT operator. + */ public /*sealed*/ interface BitNot extends org.jooq.Field, @@ -1975,6 +2272,9 @@ public final class QOM { // BitNot {} + /** + * The BIT OR operator. + */ public /*sealed*/ interface BitOr extends org.jooq.Field, @@ -1983,6 +2283,9 @@ public final class QOM { // BitOr {} + /** + * The BIT X NOR operator. + */ public /*sealed*/ interface BitXNor extends org.jooq.Field, @@ -1991,6 +2294,9 @@ public final class QOM { // BitXNor {} + /** + * The BIT XOR operator. + */ public /*sealed*/ interface BitXor extends org.jooq.Field, @@ -1999,6 +2305,11 @@ public final class QOM { // BitXor {} + /** + * The CEIL function. + *

+ * Get the smallest integer value equal or greater to a value. + */ public /*sealed*/ interface Ceil extends org.jooq.Field @@ -2009,6 +2320,9 @@ public final class QOM { @NotNull Ceil $value(Field value); } + /** + * The COS function. + */ public /*sealed*/ interface Cos extends org.jooq.Field @@ -2019,6 +2333,9 @@ public final class QOM { @NotNull Cos $number(Field number); } + /** + * The COSH function. + */ public /*sealed*/ interface Cosh extends org.jooq.Field @@ -2029,6 +2346,9 @@ public final class QOM { @NotNull Cosh $number(Field number); } + /** + * The COT function. + */ public /*sealed*/ interface Cot extends org.jooq.Field @@ -2039,6 +2359,9 @@ public final class QOM { @NotNull Cot $number(Field number); } + /** + * The COTH function. + */ public /*sealed*/ interface Coth extends org.jooq.Field @@ -2049,16 +2372,32 @@ public final class QOM { @NotNull Coth $number(Field number); } + /** + * The DEGREES function. + *

+ * Turn a value in radians to degrees. + */ public /*sealed*/ interface Degrees extends org.jooq.Field //permits // Degrees { + + /** + * The value in radians. + */ @NotNull Field $radians(); + + /** + * The value in radians. + */ @NotNull Degrees $radians(Field radians); } + /** + * The DIV operator. + */ public /*sealed*/ interface Div extends org.jooq.Field, @@ -2067,6 +2406,11 @@ public final class QOM { // Div {} + /** + * The E function. + *

+ * The E literal (Euler number). + */ public /*sealed*/ interface Euler extends org.jooq.Field, @@ -2075,6 +2419,9 @@ public final class QOM { // Euler {} + /** + * The EXP function. + */ public /*sealed*/ interface Exp extends org.jooq.Field @@ -2085,6 +2432,11 @@ public final class QOM { @NotNull Exp $value(Field value); } + /** + * The FLOOR function. + *

+ * Get the biggest integer value equal or less than a value. + */ public /*sealed*/ interface Floor extends org.jooq.Field @@ -2095,6 +2447,9 @@ public final class QOM { @NotNull Floor $value(Field value); } + /** + * The LN function. + */ public /*sealed*/ interface Log extends org.jooq.Field @@ -2107,6 +2462,9 @@ public final class QOM { @NotNull Log $base(Field base); } + /** + * The LOG10 function. + */ public /*sealed*/ interface Log10 extends org.jooq.Field @@ -2117,6 +2475,9 @@ public final class QOM { @NotNull Log10 $value(Field value); } + /** + * The MOD operator. + */ public /*sealed*/ interface Mod extends org.jooq.Field, @@ -2128,6 +2489,9 @@ public final class QOM { @NotNull default Field $divisor() { return $arg2(); } } + /** + * The MUL operator. + */ public /*sealed*/ interface Mul extends org.jooq.Field, @@ -2136,6 +2500,11 @@ public final class QOM { // Mul {} + /** + * The PI function. + *

+ * The π literal. + */ public /*sealed*/ interface Pi extends org.jooq.Field, @@ -2144,6 +2513,9 @@ public final class QOM { // Pi {} + /** + * The POWER operator. + */ public /*sealed*/ interface Power extends org.jooq.Field, @@ -2155,16 +2527,34 @@ public final class QOM { @NotNull default Field $exponent() { return $arg2(); } } + /** + * The RADIANS function. + *

+ * Turn a value in degrees to radians. + */ public /*sealed*/ interface Radians extends org.jooq.Field //permits // Radians { + + /** + * The value in degrees. + */ @NotNull Field $degrees(); + + /** + * The value in degrees. + */ @NotNull Radians $degrees(Field degrees); } + /** + * The RAND function. + *

+ * Get a random numeric value. + */ public /*sealed*/ interface Rand extends org.jooq.Field, @@ -2173,18 +2563,44 @@ public final class QOM { // Rand {} + /** + * The ROUND function. + *

+ * Round a numeric value to the nearest decimal precision. + */ public /*sealed*/ interface Round extends org.jooq.Field //permits // Round { + + /** + * The number to be rounded. + */ @NotNull Field $value(); + + /** + * The decimals to round to. + */ @Nullable Field $decimals(); + + /** + * The number to be rounded. + */ @NotNull Round $value(Field value); + + /** + * The decimals to round to. + */ @NotNull Round $decimals(Field decimals); } + /** + * The SHL operator. + *

+ * Left shift all bits in a number + */ public /*sealed*/ interface Shl extends org.jooq.Field, @@ -2192,10 +2608,23 @@ public final class QOM { //permits // Shl { + + /** + * The number whose bits to shift left. + */ @NotNull default Field $value() { return $arg1(); } + + /** + * The number of bits to shift. + */ @NotNull default Field $count() { return $arg2(); } } + /** + * The SHR operator. + *

+ * Right shift all bits in a number + */ public /*sealed*/ interface Shr extends org.jooq.Field, @@ -2203,10 +2632,23 @@ public final class QOM { //permits // Shr { + + /** + * The number whose bits to shift right + */ @NotNull default Field $value() { return $arg1(); } + + /** + * The number of bits to shift. + */ @NotNull default Field $count() { return $arg2(); } } + /** + * The SIGN function. + *

+ * Get the sign of a number and return it as any of +1, 0, -1. + */ public /*sealed*/ interface Sign extends org.jooq.Field @@ -2217,6 +2659,9 @@ public final class QOM { @NotNull Sign $number(Field number); } + /** + * The SIN function. + */ public /*sealed*/ interface Sin extends org.jooq.Field @@ -2227,6 +2672,9 @@ public final class QOM { @NotNull Sin $number(Field number); } + /** + * The SINH function. + */ public /*sealed*/ interface Sinh extends org.jooq.Field @@ -2237,6 +2685,9 @@ public final class QOM { @NotNull Sinh $number(Field number); } + /** + * The SQRT function. + */ public /*sealed*/ interface Sqrt extends org.jooq.Field @@ -2247,6 +2698,9 @@ public final class QOM { @NotNull Sqrt $value(Field value); } + /** + * The SQUARE function. + */ public /*sealed*/ interface Square extends org.jooq.Field @@ -2257,6 +2711,9 @@ public final class QOM { @NotNull Square $value(Field value); } + /** + * The SUB operator. + */ public /*sealed*/ interface Sub extends org.jooq.Field, @@ -2265,6 +2722,9 @@ public final class QOM { // Sub {} + /** + * The TAN function. + */ public /*sealed*/ interface Tan extends org.jooq.Field @@ -2275,6 +2735,9 @@ public final class QOM { @NotNull Tan $number(Field number); } + /** + * The TANH function. + */ public /*sealed*/ interface Tanh extends org.jooq.Field @@ -2285,6 +2748,11 @@ public final class QOM { @NotNull Tanh $number(Field number); } + /** + * The TAU function. + *

+ * The τ literal, or π, in a better world. + */ public /*sealed*/ interface Tau extends org.jooq.Field, @@ -2293,34 +2761,97 @@ public final class QOM { // Tau {} + /** + * The TRUNC function. + *

+ * Truncate a number to a given number of decimals. + */ public /*sealed*/ interface Trunc extends org.jooq.Field //permits // Trunc { + + /** + * The number to be truncated + */ @NotNull Field $value(); + + /** + * The decimals to truncate to. + */ @NotNull Field $decimals(); + + /** + * The number to be truncated + */ @NotNull Trunc $value(Field value); + + /** + * The decimals to truncate to. + */ @NotNull Trunc $decimals(Field decimals); } + /** + * The WIDTH BUCKET function. + *

+ * Divide a range into buckets of equal size. + */ public /*sealed*/ interface WidthBucket extends org.jooq.Field //permits // WidthBucket { + + /** + * The value to divide into the range. + */ @NotNull Field $field(); + + /** + * The lower bound of the range. + */ @NotNull Field $low(); + + /** + * The upper bound of the range. + */ @NotNull Field $high(); + + /** + * The number of buckets to produce. + */ @NotNull Field $buckets(); + + /** + * The value to divide into the range. + */ @NotNull WidthBucket $field(Field field); + + /** + * The lower bound of the range. + */ @NotNull WidthBucket $low(Field low); + + /** + * The upper bound of the range. + */ @NotNull WidthBucket $high(Field high); + + /** + * The number of buckets to produce. + */ @NotNull WidthBucket $buckets(Field buckets); } + /** + * The ASCII function. + *

+ * The ASCII value of a character. + */ public /*sealed*/ interface Ascii extends org.jooq.Field @@ -2331,6 +2862,11 @@ public final class QOM { @NotNull Ascii $string(Field string); } + /** + * The BIT LENGTH function. + *

+ * The length of a string in bits. + */ public /*sealed*/ interface BitLength extends org.jooq.Field @@ -2341,6 +2877,11 @@ public final class QOM { @NotNull BitLength $string(Field string); } + /** + * The CHAR LENGTH function. + *

+ * The length of a string in characters. + */ public /*sealed*/ interface CharLength extends org.jooq.Field @@ -2351,6 +2892,9 @@ public final class QOM { @NotNull CharLength $string(Field string); } + /** + * The CHR function. + */ public /*sealed*/ interface Chr extends org.jooq.Field @@ -2361,6 +2905,29 @@ public final class QOM { @NotNull Chr $number(Field number); } + /** + * The CONTAINS operator. + *

+ * Convenience method for {@link #like(String, char)} including proper + * adding of wildcards and escaping. + *

+ * SQL: this like ('%' || escape(value, '\') || '%') escape '\' + *

+ * Note: This also works with numbers, for instance + * val(1133).contains(13) + *

+ * If you're using {@link SQLDialect#POSTGRES}, then you can use this method + * also to express the "ARRAY contains" operator. For example:

+     * // Use this expression
+     * val(new Integer[] { 1, 2, 3 }).contains(new Integer[] { 1, 2 })
+     *
+     * // ... to render this SQL
+     * ARRAY[1, 2, 3] @> ARRAY[1, 2]
+     * 
+ *

+ * Note, this does not correspond to the Oracle Text CONTAINS() + * function. Refer to {@link OracleDSL#contains(Field, String)} instead. + */ public /*sealed*/ interface Contains extends CompareCondition @@ -2371,6 +2938,18 @@ public final class QOM { @NotNull default Field $content() { return $arg2(); } } + /** + * The CONTAINS IGNORE CASE operator. + *

+ * Convenience method for {@link #likeIgnoreCase(String, char)} including + * proper adding of wildcards and escaping. + *

+ * This translates to + * this ilike ('%' || escape(value, '\') || '%') escape '\' in + * {@link SQLDialect#POSTGRES}, or to + * lower(this) not like lower(('%' || escape(value, '\') || '%') escape '\') + * in all other dialects. + */ public /*sealed*/ interface ContainsIgnoreCase extends CompareCondition @@ -2381,6 +2960,9 @@ public final class QOM { @NotNull default Field $content() { return $arg2(); } } + /** + * The DIGITS function. + */ public /*sealed*/ interface Digits extends org.jooq.Field @@ -2391,6 +2973,17 @@ public final class QOM { @NotNull Digits $value(Field value); } + /** + * The ENDS WITH operator. + *

+ * Convenience method for {@link #like(String, char)} including proper + * adding of wildcards and escaping. + *

+ * SQL: this like ('%' || escape(value, '\')) escape '\' + *

+ * Note: This also works with numbers, for instance + * val(1133).endsWith(33) + */ public /*sealed*/ interface EndsWith extends CompareCondition @@ -2401,6 +2994,17 @@ public final class QOM { @NotNull default Field $suffix() { return $arg2(); } } + /** + * The ENDS WITH IGNORE CASE operator. + *

+ * Convenience method for {@link #like(String, char)} including proper + * adding of wildcards and escaping. + *

+ * SQL: lower(this) like ('%' || lower(escape(value, '\'))) escape '\' + *

+ * Note: This also works with numbers, for instance + * val(1133).endsWithIgnoreCase(33) + */ public /*sealed*/ interface EndsWithIgnoreCase extends CompareCondition @@ -2411,18 +3015,44 @@ public final class QOM { @NotNull default Field $suffix() { return $arg2(); } } + /** + * The LEFT function. + *

+ * Get the left outermost characters from a string. + */ public /*sealed*/ interface Left extends org.jooq.Field //permits // Left { + + /** + * The string whose characters are extracted. + */ @NotNull Field $string(); + + /** + * The number of characters to extract from the string. + */ @NotNull Field $length(); + + /** + * The string whose characters are extracted. + */ @NotNull Left $string(Field string); + + /** + * The number of characters to extract from the string. + */ @NotNull Left $length(Field length); } + /** + * The LOWER function. + *

+ * Turn a string into lower case. + */ public /*sealed*/ interface Lower extends org.jooq.Field @@ -2433,32 +3063,87 @@ public final class QOM { @NotNull Lower $string(Field string); } + /** + * The LPAD function. + *

+ * Left-pad a string with a character (whitespace as default) for a number of times. + */ public /*sealed*/ interface Lpad extends org.jooq.Field //permits // Lpad { + + /** + * The string to be padded. + */ @NotNull Field $string(); + + /** + * The maximum length to pad the string to. + */ @NotNull Field $length(); + + /** + * The padding character, if different from whitespace + */ @Nullable Field $character(); + + /** + * The string to be padded. + */ @NotNull Lpad $string(Field string); + + /** + * The maximum length to pad the string to. + */ @NotNull Lpad $length(Field length); + + /** + * The padding character, if different from whitespace + */ @NotNull Lpad $character(Field character); } + /** + * The LTRIM function. + *

+ * Trim characters (whitespace as default) from both sides of a string. + */ public /*sealed*/ interface Ltrim extends org.jooq.Field //permits // Ltrim { + + /** + * The string to be trimmed. + */ @NotNull Field $string(); + + /** + * The characters to be trimmed. + */ @Nullable Field $characters(); + + /** + * The string to be trimmed. + */ @NotNull Ltrim $string(Field string); + + /** + * The characters to be trimmed. + */ @NotNull Ltrim $characters(Field characters); } + /** + * The MD5 function. + *

+ * Calculate an MD5 hash from a string. + */ public /*sealed*/ interface Md5 extends org.jooq.Field @@ -2469,6 +3154,11 @@ public final class QOM { @NotNull Md5 $string(Field string); } + /** + * The OCTET LENGTH function. + *

+ * The length of a string in octets. + */ public /*sealed*/ interface OctetLength extends org.jooq.Field @@ -2479,62 +3169,183 @@ public final class QOM { @NotNull OctetLength $string(Field string); } + /** + * The OVERLAY function. + *

+ * Place a string on top of another string, replacing the original contents. + */ public /*sealed*/ interface Overlay extends org.jooq.Field //permits // Overlay { + + /** + * The original string on top of which the overlay is placed. + */ @NotNull Field $in(); + + /** + * The string that is being placed on top of the other string. + */ @NotNull Field $placing(); + + /** + * The start index (1-based) starting from where the overlay is placed. + */ @NotNull Field $startIndex(); + + /** + * The length in the original string that will be replaced, if different from the overlay length. + */ @Nullable Field $length(); + + /** + * The original string on top of which the overlay is placed. + */ @NotNull Overlay $in(Field in); + + /** + * The string that is being placed on top of the other string. + */ @NotNull Overlay $placing(Field placing); + + /** + * The start index (1-based) starting from where the overlay is placed. + */ @NotNull Overlay $startIndex(Field startIndex); + + /** + * The length in the original string that will be replaced, if different from the overlay length. + */ @NotNull Overlay $length(Field length); } + /** + * The POSITION function. + *

+ * Search the position (1-based) of a substring in another string. + */ public /*sealed*/ interface Position extends org.jooq.Field //permits // Position { + + /** + * The string in which to search the substring. + */ @NotNull Field $in(); + + /** + * The substring to search for. + */ @NotNull Field $search(); + + /** + * The start index (1-based) from which to start looking for the substring. + */ @Nullable Field $startIndex(); + + /** + * The string in which to search the substring. + */ @NotNull Position $in(Field in); + + /** + * The substring to search for. + */ @NotNull Position $search(Field search); + + /** + * The start index (1-based) from which to start looking for the substring. + */ @NotNull Position $startIndex(Field startIndex); } + /** + * The REPEAT function. + *

+ * Repeat a string a number of times. + */ public /*sealed*/ interface Repeat extends org.jooq.Field //permits // Repeat { + + /** + * The string to be repeated. + */ @NotNull Field $string(); + + /** + * The number of times to repeat the string. + */ @NotNull Field $count(); + + /** + * The string to be repeated. + */ @NotNull Repeat $string(Field string); + + /** + * The number of times to repeat the string. + */ @NotNull Repeat $count(Field count); } + /** + * The REPLACE function. + *

+ * Replace all occurrences of a substring in another string. + */ public /*sealed*/ interface Replace extends org.jooq.Field //permits // Replace { + + /** + * The string in which to replace contents. + */ @NotNull Field $string(); + + /** + * The substring to search for. + */ @NotNull Field $search(); + + /** + * The replacement for each substring, if not empty. + */ @Nullable Field $replace(); + + /** + * The string in which to replace contents. + */ @NotNull Replace $string(Field string); + + /** + * The substring to search for. + */ @NotNull Replace $search(Field search); + + /** + * The replacement for each substring, if not empty. + */ @NotNull Replace $replace(Field replace); } + /** + * The REVERSE function. + *

+ * Reverse a string. + */ public /*sealed*/ interface Reverse extends org.jooq.Field @@ -2545,68 +3356,192 @@ public final class QOM { @NotNull Reverse $string(Field string); } + /** + * The RIGHT function. + *

+ * Get the right outermost characters from a string. + */ public /*sealed*/ interface Right extends org.jooq.Field //permits // Right { + + /** + * The string whose characters are extracted. + */ @NotNull Field $string(); + + /** + * The number of characters to extract from the string. + */ @NotNull Field $length(); + + /** + * The string whose characters are extracted. + */ @NotNull Right $string(Field string); + + /** + * The number of characters to extract from the string. + */ @NotNull Right $length(Field length); } + /** + * The RPAD function. + *

+ * Right-pad a string with a character (whitespace as default) for a number of times. + */ public /*sealed*/ interface Rpad extends org.jooq.Field //permits // Rpad { + + /** + * The string to be padded. + */ @NotNull Field $string(); + + /** + * The maximum length to pad the string to. + */ @NotNull Field $length(); + + /** + * The padding character, if different from whitespace + */ @Nullable Field $character(); + + /** + * The string to be padded. + */ @NotNull Rpad $string(Field string); + + /** + * The maximum length to pad the string to. + */ @NotNull Rpad $length(Field length); + + /** + * The padding character, if different from whitespace + */ @NotNull Rpad $character(Field character); } + /** + * The RTRIM function. + *

+ * Trim characters (whitespace as default) from both sides of a string. + */ public /*sealed*/ interface Rtrim extends org.jooq.Field //permits // Rtrim { + + /** + * The string to be trimmed. + */ @NotNull Field $string(); + + /** + * The characters to be trimmed. + */ @Nullable Field $characters(); + + /** + * The string to be trimmed. + */ @NotNull Rtrim $string(Field string); + + /** + * The characters to be trimmed. + */ @NotNull Rtrim $characters(Field characters); } + /** + * The SPACE function. + *

+ * Get a string of spaces of a given length. + */ public /*sealed*/ interface Space extends org.jooq.Field //permits // Space { + + /** + * The number of spaces to produce. + */ @NotNull Field $count(); + + /** + * The number of spaces to produce. + */ @NotNull Space $count(Field count); } + /** + * The SPLIT PART function. + *

+ * Split a string into tokens, and retrieve the nth token. + */ public /*sealed*/ interface SplitPart extends org.jooq.Field //permits // SplitPart { + + /** + * The string to be split into parts. + */ @NotNull Field $string(); + + /** + * The delimiter used for splitting. + */ @NotNull Field $delimiter(); + + /** + * The token number (1-based). + */ @NotNull Field $n(); + + /** + * The string to be split into parts. + */ @NotNull SplitPart $string(Field string); + + /** + * The delimiter used for splitting. + */ @NotNull SplitPart $delimiter(Field delimiter); + + /** + * The token number (1-based). + */ @NotNull SplitPart $n(Field n); } + /** + * The STARTS WITH operator. + *

+ * Convenience method for {@link #like(String, char)} including proper + * adding of wildcards and escaping. + *

+ * SQL: this like (escape(value, '\') || '%') escape '\' + *

+ * Note: This also works with numbers, for instance + * val(1133).startsWith(11) + */ public /*sealed*/ interface StartsWith extends CompareCondition @@ -2617,6 +3552,17 @@ public final class QOM { @NotNull default Field $prefix() { return $arg2(); } } + /** + * The STARTS WITH IGNORE CASE operator. + *

+ * Convenience method for {@link #like(String, char)} including proper + * adding of wildcards and escaping. + *

+ * SQL: lower(this) like (lower(escape(value, '\')) || '%') escape '\' + *

+ * Note: This also works with numbers, for instance + * val(1133).startsWithIgnoreCase(11) + */ public /*sealed*/ interface StartsWithIgnoreCase extends CompareCondition @@ -2627,58 +3573,163 @@ public final class QOM { @NotNull default Field $prefix() { return $arg2(); } } + /** + * The SUBSTRING function. + *

+ * Get a substring of a string, from a given position. + */ public /*sealed*/ interface Substring extends org.jooq.Field //permits // Substring { + + /** + * The string from which to get the substring. + */ @NotNull Field $string(); + + /** + * The position (1-based) from which to get the substring. + */ @NotNull Field $startingPosition(); + + /** + * The maximum length of the substring. + */ @Nullable Field $length(); + + /** + * The string from which to get the substring. + */ @NotNull Substring $string(Field string); + + /** + * The position (1-based) from which to get the substring. + */ @NotNull Substring $startingPosition(Field startingPosition); + + /** + * The maximum length of the substring. + */ @NotNull Substring $length(Field length); } + /** + * The SUBSTRING INDEX function. + *

+ * Get a substring of a string, from the beginning until the nth occurrence of a substring. + */ public /*sealed*/ interface SubstringIndex extends org.jooq.Field //permits // SubstringIndex { + + /** + * The string from which to get the substring. + */ @NotNull Field $string(); + + /** + * The delimiter. + */ @NotNull Field $delimiter(); + + /** + * The number of occurrences of the delimiter. + */ @NotNull Field $n(); + + /** + * The string from which to get the substring. + */ @NotNull SubstringIndex $string(Field string); + + /** + * The delimiter. + */ @NotNull SubstringIndex $delimiter(Field delimiter); + + /** + * The number of occurrences of the delimiter. + */ @NotNull SubstringIndex $n(Field n); } + /** + * The TO CHAR function. + *

+ * Format an arbitrary value as a string. + */ public /*sealed*/ interface ToChar extends org.jooq.Field //permits // ToChar { + + /** + * The value to be formatted. + */ @NotNull Field $value(); + + /** + * The vendor-specific formatting string. + */ @Nullable Field $formatMask(); + + /** + * The value to be formatted. + */ @NotNull ToChar $value(Field value); + + /** + * The vendor-specific formatting string. + */ @NotNull ToChar $formatMask(Field formatMask); } + /** + * The TO DATE function. + *

+ * Parse a string-formatted date value to a date. + */ public /*sealed*/ interface ToDate extends org.jooq.Field //permits // ToDate { + + /** + * The formatted DATE value. + */ @NotNull Field $value(); + + /** + * The vendor-specific formatting string. + */ @NotNull Field $formatMask(); + + /** + * The formatted DATE value. + */ @NotNull ToDate $value(Field value); + + /** + * The vendor-specific formatting string. + */ @NotNull ToDate $formatMask(Field formatMask); } + /** + * The TO HEX function. + *

+ * Format a number to its hex value. + */ public /*sealed*/ interface ToHex extends org.jooq.Field @@ -2689,44 +3740,120 @@ public final class QOM { @NotNull ToHex $value(Field value); } + /** + * The TO TIMESTAMP function. + *

+ * Parse a string-formatted timestamp value to a timestamp. + */ public /*sealed*/ interface ToTimestamp extends org.jooq.Field //permits // ToTimestamp { + + /** + * The formatted TIMESTAMP value. + */ @NotNull Field $value(); + + /** + * The vendor-specific formatting string. + */ @NotNull Field $formatMask(); + + /** + * The formatted TIMESTAMP value. + */ @NotNull ToTimestamp $value(Field value); + + /** + * The vendor-specific formatting string. + */ @NotNull ToTimestamp $formatMask(Field formatMask); } + /** + * The TRANSLATE function. + *

+ * Translate a set of characters to another set of characters in a string. + */ public /*sealed*/ interface Translate extends org.jooq.Field //permits // Translate { + + /** + * The string to translate. + */ @NotNull Field $string(); + + /** + * The set of source characters. + */ @NotNull Field $from(); + + /** + * The set of target characters, matched with source characters by position. + */ @NotNull Field $to(); + + /** + * The string to translate. + */ @NotNull Translate $string(Field string); + + /** + * The set of source characters. + */ @NotNull Translate $from(Field from); + + /** + * The set of target characters, matched with source characters by position. + */ @NotNull Translate $to(Field to); } + /** + * The TRIM function. + *

+ * Trim characters (whitespace as default) from both sides of a string. + */ public /*sealed*/ interface Trim extends org.jooq.Field //permits // Trim { + + /** + * The string to be trimmed. + */ @NotNull Field $string(); + + /** + * The characters to be trimmed. + */ @Nullable Field $characters(); + + /** + * The string to be trimmed. + */ @NotNull Trim $string(Field string); + + /** + * The characters to be trimmed. + */ @NotNull Trim $characters(Field characters); } + /** + * The UPPER function. + *

+ * Turn a string into upper case. + */ public /*sealed*/ interface Upper extends org.jooq.Field @@ -2737,6 +3864,11 @@ public final class QOM { @NotNull Upper $string(Field string); } + /** + * The UUID function. + *

+ * Generate a random UUID. + */ public /*sealed*/ interface Uuid extends org.jooq.Field, @@ -2745,20 +3877,54 @@ public final class QOM { // Uuid {} + /** + * The DATE ADD function. + *

+ * Add an interval to a date. + */ public /*sealed*/ interface DateAdd extends org.jooq.Field //permits // DateAdd { + + /** + * The date to add an interval to + */ @NotNull Field $date(); + + /** + * The interval to add to the date + */ @NotNull Field $interval(); + + /** + * The date part describing the interval + */ @Nullable DatePart $datePart(); + + /** + * The date to add an interval to + */ @NotNull DateAdd $date(Field date); + + /** + * The interval to add to the date + */ @NotNull DateAdd $interval(Field interval); + + /** + * The date part describing the interval + */ @NotNull DateAdd $datePart(DatePart datePart); } + /** + * The CARDINALITY function. + *

+ * Calculate the cardinality of an array field. + */ public /*sealed*/ interface Cardinality extends org.jooq.Field @@ -2769,6 +3935,11 @@ public final class QOM { @NotNull Cardinality $array(Field array); } + /** + * The ARRAY GET function. + *

+ * Get an array element at a given index (1 based). + */ public /*sealed*/ interface ArrayGet extends org.jooq.Field @@ -2781,30 +3952,73 @@ public final class QOM { @NotNull ArrayGet $index(Field index); } + /** + * The NVL function. + *

+ * Return the first non-null argument. + */ public /*sealed*/ interface Nvl extends org.jooq.Field //permits // Nvl { + + /** + * The nullable value. + */ @NotNull Field $value(); + + /** + * The default value if the other value is null. + */ @NotNull Field $defaultValue(); + + /** + * The nullable value. + */ @NotNull Nvl $value(Field value); + + /** + * The default value if the other value is null. + */ @NotNull Nvl $defaultValue(Field defaultValue); } + /** + * The NULLIF function. + */ public /*sealed*/ interface Nullif extends org.jooq.Field //permits // Nullif { + + /** + * The result value if the other value is not equal. + */ @NotNull Field $value(); + + /** + * The value to compare the result value with. + */ @NotNull Field $other(); + + /** + * The result value if the other value is not equal. + */ @NotNull Nullif $value(Field value); + + /** + * The value to compare the result value with. + */ @NotNull Nullif $other(Field other); } + /** + * The CURRENT CATALOG function. + */ public /*sealed*/ interface CurrentCatalog extends org.jooq.Field, @@ -2813,6 +4027,9 @@ public final class QOM { // CurrentCatalog {} + /** + * The CURRENT SCHEMA function. + */ public /*sealed*/ interface CurrentSchema extends org.jooq.Field, @@ -2821,6 +4038,9 @@ public final class QOM { // CurrentSchema {} + /** + * The CURRENT USER function. + */ public /*sealed*/ interface CurrentUser extends org.jooq.Field, @@ -2913,6 +4133,66 @@ public final class QOM { + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + /** + * The XMLCOMMENT function. + */ public /*sealed*/ interface XMLComment extends org.jooq.Field @@ -2923,6 +4203,9 @@ public final class QOM { @NotNull XMLComment $comment(Field comment); } + /** + * The XMLCONCAT function. + */ public /*sealed*/ interface XMLConcat extends org.jooq.Field @@ -2946,6 +4229,12 @@ public final class QOM { + + + + /** + * The XMLFOREST function. + */ public /*sealed*/ interface XMLForest extends org.jooq.Field @@ -2956,6 +4245,9 @@ public final class QOM { @NotNull XMLForest $fields(MList> fields); } + /** + * The XMLPI function. + */ public /*sealed*/ interface XMLPi extends org.jooq.Field @@ -2968,6 +4260,9 @@ public final class QOM { @NotNull XMLPi $content(Field content); } + /** + * The XMLSERIALIZE function. + */ public /*sealed*/ interface XMLSerialize extends org.jooq.Field @@ -2982,6 +4277,9 @@ public final class QOM { @NotNull XMLSerialize $type(DataType type); } + /** + * The JSON ARRAY function. + */ public /*sealed*/ interface JSONArray extends Field @@ -2998,6 +4296,9 @@ public final class QOM { @NotNull JSONArray $returning(DataType returning); } + /** + * The JSON OBJECT function. + */ public /*sealed*/ interface JSONObject extends Field @@ -3043,6 +4344,20 @@ public final class QOM { + + + + + + + + + + /** + * The FIELD function. + *

+ * Wrap a condition in a boolean field. + */ public /*sealed*/ interface ConditionAsField extends org.jooq.Field @@ -3053,6 +4368,19 @@ public final class QOM { @NotNull ConditionAsField $condition(Condition condition); } + /** + * The CONDITION function. + *

+ * Create a condition from a boolean field. + *

+ * Databases that support boolean data types can use boolean expressions + * as predicates or as columns interchangeably. This extends to any type + * of field, including functions. A Postgres example: + *

+ *

+     * select 1 where texteq('a', 'a');
+     * 
+ */ public /*sealed*/ interface FieldCondition extends org.jooq.Condition @@ -3063,6 +4391,11 @@ public final class QOM { @NotNull FieldCondition $field(Field field); } + /** + * The ANY VALUE function. + *

+ * Get any arbitrary value from the group. + */ public /*sealed*/ interface AnyValue extends org.jooq.AggregateFunction @@ -3073,6 +4406,9 @@ public final class QOM { @NotNull AnyValue $field(Field field); } + /** + * The AVG function. + */ public /*sealed*/ interface Avg extends org.jooq.AggregateFunction @@ -3085,6 +4421,11 @@ public final class QOM { @NotNull Avg $distinct(boolean distinct); } + /** + * The BIT AND AGG function. + *

+ * Calculate the bitwise AND aggregate value. + */ public /*sealed*/ interface BitAndAgg extends org.jooq.AggregateFunction @@ -3095,6 +4436,11 @@ public final class QOM { @NotNull BitAndAgg $value(Field value); } + /** + * The BIT OR AGG function. + *

+ * Calculate the bitwise OR aggregate value. + */ public /*sealed*/ interface BitOrAgg extends org.jooq.AggregateFunction @@ -3105,6 +4451,11 @@ public final class QOM { @NotNull BitOrAgg $value(Field value); } + /** + * The BIT XOR AGG function. + *

+ * Calculate the bitwise XOR aggregate value. + */ public /*sealed*/ interface BitXorAgg extends org.jooq.AggregateFunction @@ -3115,6 +4466,9 @@ public final class QOM { @NotNull BitXorAgg $value(Field value); } + /** + * The BOOL AND function. + */ public /*sealed*/ interface BoolAnd extends org.jooq.AggregateFunction @@ -3125,6 +4479,9 @@ public final class QOM { @NotNull BoolAnd $condition(Condition condition); } + /** + * The BOOL OR function. + */ public /*sealed*/ interface BoolOr extends org.jooq.AggregateFunction @@ -3135,6 +4492,14 @@ public final class QOM { @NotNull BoolOr $condition(Condition condition); } + /** + * The CORR function. + *

+ * Calculate the correlation coefficient. This standard SQL function may be supported + * natively, or emulated using {@link #covarPop(Field, Field)} and {@link #stddevPop(Field)}. + * If an emulation is applied, beware of the risk of "Catastrophic + * cancellation" in case the calculations are performed using floating point arithmetic. + */ public /*sealed*/ interface Corr extends org.jooq.AggregateFunction @@ -3147,6 +4512,9 @@ public final class QOM { @NotNull Corr $x(Field x); } + /** + * The COUNT function. + */ public /*sealed*/ interface Count extends org.jooq.AggregateFunction @@ -3159,6 +4527,14 @@ public final class QOM { @NotNull Count $distinct(boolean distinct); } + /** + * The COVAR SAMP function. + *

+ * Calculate the sample covariance. This standard SQL function may be supported natively, + * or emulated using {@link #sum(Field)} and {@link #count(Field)}. If an emulation + * is applied, beware of the risk of "Catastrophic + * cancellation" in case the calculations are performed using floating point arithmetic. + */ public /*sealed*/ interface CovarSamp extends org.jooq.AggregateFunction @@ -3171,6 +4547,14 @@ public final class QOM { @NotNull CovarSamp $x(Field x); } + /** + * The COVAR POP function. + *

+ * Calculate the population covariance. This standard SQL function may be supported + * natively, or emulated using {@link #sum(Field)} and {@link #count(Field)}. If an + * emulation is applied, beware of the risk of "Catastrophic + * cancellation" in case the calculations are performed using floating point arithmetic. + */ public /*sealed*/ interface CovarPop extends org.jooq.AggregateFunction @@ -3183,6 +4567,9 @@ public final class QOM { @NotNull CovarPop $x(Field x); } + /** + * The MAX function. + */ public /*sealed*/ interface Max extends org.jooq.AggregateFunction @@ -3195,6 +4582,9 @@ public final class QOM { @NotNull Max $distinct(boolean distinct); } + /** + * The MEDIAN function. + */ public /*sealed*/ interface Median extends org.jooq.AggregateFunction @@ -3205,6 +4595,9 @@ public final class QOM { @NotNull Median $field(Field field); } + /** + * The MIN function. + */ public /*sealed*/ interface Min extends org.jooq.AggregateFunction @@ -3217,6 +4610,21 @@ public final class QOM { @NotNull Min $distinct(boolean distinct); } + /** + * The PRODUCT function. + *

+ * Get the sum over a numeric field: product(distinct field). + *

+ * Few dialects currently support multiplicative aggregation natively. jOOQ + * emulates this using exp(sum(log(arg))) for strictly positive + * numbers, and does some additional handling for zero and negative numbers. + *

+ * Note that this implementation may introduce rounding errors, even for + * integer multiplication. + *

+ * More information here: https://blog.jooq.org/2018/09/21/how-to-write-a-multiplication-aggregate-function-in-sql. + */ public /*sealed*/ interface Product extends org.jooq.AggregateFunction @@ -3229,6 +4637,14 @@ public final class QOM { @NotNull Product $distinct(boolean distinct); } + /** + * The REGR AVGX function. + *

+ * Calculate the average of the independent values (x). This standard SQL function may + * be supported natively, or emulated using {@link #sum(Field)} and {@link #count(Field)}. + * If an emulation is applied, beware of the risk of "Catastrophic + * cancellation" in case the calculations are performed using floating point arithmetic. + */ public /*sealed*/ interface RegrAvgX extends org.jooq.AggregateFunction @@ -3241,6 +4657,14 @@ public final class QOM { @NotNull RegrAvgX $x(Field x); } + /** + * The REGR AVGY function. + *

+ * Calculate the average of the dependent values (y). This standard SQL function may + * be supported natively, or emulated using {@link #sum(Field)} and {@link #count(Field)}. + * If an emulation is applied, beware of the risk of "Catastrophic + * cancellation" in case the calculations are performed using floating point arithmetic. + */ public /*sealed*/ interface RegrAvgY extends org.jooq.AggregateFunction @@ -3253,6 +4677,14 @@ public final class QOM { @NotNull RegrAvgY $x(Field x); } + /** + * The REGR COUNT function. + *

+ * Calculate the number of non-NULL pairs. This standard SQL function may + * be supported natively, or emulated using {@link #sum(Field)} and {@link #count(Field)}. + * If an emulation is applied, beware of the risk of "Catastrophic + * cancellation" in case the calculations are performed using floating point arithmetic. + */ public /*sealed*/ interface RegrCount extends org.jooq.AggregateFunction @@ -3265,6 +4697,14 @@ public final class QOM { @NotNull RegrCount $x(Field x); } + /** + * The REGR INTERCEPT function. + *

+ * Calculate the y intercept of the regression line. This standard SQL function may + * be supported natively, or emulated using {@link #sum(Field)} and {@link #count(Field)}. + * If an emulation is applied, beware of the risk of "Catastrophic + * cancellation" in case the calculations are performed using floating point arithmetic. + */ public /*sealed*/ interface RegrIntercept extends org.jooq.AggregateFunction @@ -3277,6 +4717,14 @@ public final class QOM { @NotNull RegrIntercept $x(Field x); } + /** + * The REGR R2 function. + *

+ * Calculate the coefficient of determination. This standard SQL function may be supported + * natively, or emulated using {@link #sum(Field)} and {@link #count(Field)}. If an + * emulation is applied, beware of the risk of "Catastrophic + * cancellation" in case the calculations are performed using floating point arithmetic. + */ public /*sealed*/ interface RegrR2 extends org.jooq.AggregateFunction @@ -3289,6 +4737,14 @@ public final class QOM { @NotNull RegrR2 $x(Field x); } + /** + * The REGR SLOPE function. + *

+ * Calculate the slope of the regression line. This standard SQL function may be supported + * natively, or emulated using {@link #sum(Field)} and {@link #count(Field)}. If an + * emulation is applied, beware of the risk of "Catastrophic + * cancellation" in case the calculations are performed using floating point arithmetic. + */ public /*sealed*/ interface RegrSlope extends org.jooq.AggregateFunction @@ -3301,6 +4757,14 @@ public final class QOM { @NotNull RegrSlope $x(Field x); } + /** + * The REGR SXX function. + *

+ * Calculate the REGR_SXX auxiliary function. This standard SQL function + * may be supported natively, or emulated using {@link #sum(Field)} and {@link #count(Field)}. + * If an emulation is applied, beware of the risk of "Catastrophic + * cancellation" in case the calculations are performed using floating point arithmetic. + */ public /*sealed*/ interface RegrSxx extends org.jooq.AggregateFunction @@ -3313,6 +4777,14 @@ public final class QOM { @NotNull RegrSxx $x(Field x); } + /** + * The REGR SXY function. + *

+ * Calculate the REGR_SXY auxiliary function. This standard SQL function + * may be supported natively, or emulated using {@link #sum(Field)} and {@link #count(Field)}. + * If an emulation is applied, beware of the risk of "Catastrophic + * cancellation" in case the calculations are performed using floating point arithmetic. + */ public /*sealed*/ interface RegrSxy extends org.jooq.AggregateFunction @@ -3325,6 +4797,14 @@ public final class QOM { @NotNull RegrSxy $x(Field x); } + /** + * The REGR SYY function. + *

+ * Calculate the REGR_SYY auxiliary function. This standard SQL function + * may be supported natively, or emulated using {@link #sum(Field)} and {@link #count(Field)}. + * If an emulation is applied, beware of the risk of "Catastrophic + * cancellation" in case the calculations are performed using floating point arithmetic. + */ public /*sealed*/ interface RegrSyy extends org.jooq.AggregateFunction @@ -3337,6 +4817,14 @@ public final class QOM { @NotNull RegrSyy $x(Field x); } + /** + * The STDDEV POP function. + *

+ * Calculate the population standard deviation. This standard SQL function may be supported + * natively, or emulated using {@link #sum(Field)} and {@link #count(Field)}. If an + * emulation is applied, beware of the risk of "Catastrophic + * cancellation" in case the calculations are performed using floating point arithmetic. + */ public /*sealed*/ interface StddevPop extends org.jooq.AggregateFunction @@ -3347,6 +4835,14 @@ public final class QOM { @NotNull StddevPop $field(Field field); } + /** + * The STDDEV SAMP function. + *

+ * Calculate the sample standard deviation. This standard SQL function may be supported + * natively, or emulated using {@link #sum(Field)} and {@link #count(Field)}. If an + * emulation is applied, beware of the risk of "Catastrophic + * cancellation" in case the calculations are performed using floating point arithmetic. + */ public /*sealed*/ interface StddevSamp extends org.jooq.AggregateFunction @@ -3357,6 +4853,9 @@ public final class QOM { @NotNull StddevSamp $field(Field field); } + /** + * The SUM function. + */ public /*sealed*/ interface Sum extends org.jooq.AggregateFunction @@ -3369,6 +4868,14 @@ public final class QOM { @NotNull Sum $distinct(boolean distinct); } + /** + * The VAR POP function. + *

+ * Calculate the population variance. This standard SQL function may be supported natively, + * or emulated using {@link #sum(Field)} and {@link #count(Field)}. If an emulation + * is applied, beware of the risk of "Catastrophic + * cancellation" in case the calculations are performed using floating point arithmetic. + */ public /*sealed*/ interface VarPop extends org.jooq.AggregateFunction @@ -3379,6 +4886,14 @@ public final class QOM { @NotNull VarPop $field(Field field); } + /** + * The VAR SAMP function. + *

+ * Calculate the sample variance. This standard SQL function may be supported natively, + * or emulated using {@link #sum(Field)} and {@link #count(Field)}. If an emulation + * is applied, beware of the risk of "Catastrophic + * cancellation" in case the calculations are performed using floating point arithmetic. + */ public /*sealed*/ interface VarSamp extends org.jooq.AggregateFunction @@ -3709,6 +5224,166 @@ public final class QOM { + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +