@@ -34,6 +34,7 @@ public class AnalyticExpression extends ASTNodeAccessImpl implements Expression
3434 private KeepExpression keep = null ;
3535 private AnalyticType type = AnalyticType .OVER ;
3636 private boolean distinct = false ;
37+ private boolean unique = false ;
3738 private boolean ignoreNulls = false ;
3839 private Expression filterExpression = null ;
3940 private WindowElement windowElement = null ;
@@ -45,6 +46,7 @@ public AnalyticExpression(Function function) {
4546 name = function .getName ();
4647 allColumns = function .isAllColumns ();
4748 distinct = function .isDistinct ();
49+ unique = function .isUnique ();
4850
4951 ExpressionList list = function .getParameters ();
5052 if (list != null ) {
@@ -157,6 +159,14 @@ public void setDistinct(boolean distinct) {
157159 this .distinct = distinct ;
158160 }
159161
162+ public boolean isUnique () {
163+ return unique ;
164+ }
165+
166+ public void setUnique (boolean unique ) {
167+ this .unique = unique ;
168+ }
169+
160170 public boolean isIgnoreNulls () {
161171 return ignoreNulls ;
162172 }
@@ -284,6 +294,11 @@ public AnalyticExpression withDistinct(boolean distinct) {
284294 return this ;
285295 }
286296
297+ public AnalyticExpression withUnique (boolean unique ) {
298+ this .setUnique (unique );
299+ return this ;
300+ }
301+
287302 public AnalyticExpression withIgnoreNulls (boolean ignoreNulls ) {
288303 this .setIgnoreNulls (ignoreNulls );
289304 return this ;
0 commit comments