Class PostgreSQLMinMaxFunction
java.lang.Object
org.hibernate.query.sqm.function.AbstractSqmFunctionDescriptor
org.hibernate.query.sqm.function.AbstractSqmSelfRenderingFunctionDescriptor
org.hibernate.dialect.function.PostgreSQLMinMaxFunction
- All Implemented Interfaces:
FunctionRenderer, SqmFunctionDescriptor
PostgreSQL doesn't support min/max for uuid yet,
but since that type is comparable we want to support this operation.
The workaround is to cast uuid to text and aggregate that, which preserves the ordering,
and finally cast the result back to uuid.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidrender(SqlAppender sqlAppender, List<? extends SqlAstNode> sqlAstArguments, ReturnableType<?> returnType, SqlAstTranslator<?> walker) voidrender(SqlAppender sqlAppender, List<? extends SqlAstNode> sqlAstArguments, Predicate filter, ReturnableType<?> returnType, SqlAstTranslator<?> translator) Methods inherited from class AbstractSqmSelfRenderingFunctionDescriptor
filterClauseSupported, generateSqmAggregateFunctionExpression, generateSqmFunctionExpression, generateSqmOrderedSetAggregateFunctionExpression, generateSqmWindowFunctionExpression, getFunctionKindMethods inherited from class AbstractSqmFunctionDescriptor
generateAggregateSqmExpression, generateOrderedSetAggregateSqmExpression, generateSqmExpression, generateWindowSqmExpression, getArgumentsValidator, getArgumentTypeResolver, getName, getReturnSignature, getReturnTypeResolver, getSignatureMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface FunctionRenderer
render, render, renderMethods inherited from interface SqmFunctionDescriptor
alwaysIncludesParentheses, generateSqmExpression, generateSqmExpression, isPredicate
-
Constructor Details
-
PostgreSQLMinMaxFunction
-
-
Method Details
-
render
public void render(SqlAppender sqlAppender, List<? extends SqlAstNode> sqlAstArguments, ReturnableType<?> returnType, SqlAstTranslator<?> walker) - Specified by:
renderin interfaceFunctionRenderer- Overrides:
renderin classAbstractSqmSelfRenderingFunctionDescriptor
-
render
public void render(SqlAppender sqlAppender, List<? extends SqlAstNode> sqlAstArguments, Predicate filter, ReturnableType<?> returnType, SqlAstTranslator<?> translator) -
getArgumentListSignature
- Overrides:
getArgumentListSignaturein classAbstractSqmFunctionDescriptor
-