Index: ../src-rep/src/lib/aqua-query-builder/com/aquafold/querybuilder/model/dbobject/AFEntityIndexColumn.java IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== --- ../src-rep/src/lib/aqua-query-builder/com/aquafold/querybuilder/model/dbobject/AFEntityIndexColumn.java (revision 56994) +++ ../src-rep/src/lib/aqua-query-builder/com/aquafold/querybuilder/model/dbobject/AFEntityIndexColumn.java (revision ) @@ -79,4 +79,9 @@ public boolean isLeadingIndexColumn() { return (indexColumn._seq == 0); } + + + public boolean isIncluded() { + return indexColumn.included; + } } Index: ../src-rep/src/lib/aqua-database/com/aquafold/aquacore/open/rdbms/core/schema/AFIndexColumn.java IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== --- ../src-rep/src/lib/aqua-database/com/aquafold/aquacore/open/rdbms/core/schema/AFIndexColumn.java (revision 56994) +++ ../src-rep/src/lib/aqua-database/com/aquafold/aquacore/open/rdbms/core/schema/AFIndexColumn.java (revision ) @@ -66,6 +66,9 @@ // MongoDB public String _type; // {ASC, DESC, 2dsphere, 2d, hashed, etc.} + // Postgres 11 and higher + public boolean included; + public AFIndexColumn(String name, int order, int seq) { _name = name; _order = order; Index: ../src-rep/src/lib/aqua-query-builder/com/aquafold/querybuilder/datapane/tree/dbobject/ExtractedIndexColumnNode.java IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== --- ../src-rep/src/lib/aqua-query-builder/com/aquafold/querybuilder/datapane/tree/dbobject/ExtractedIndexColumnNode.java (revision 56994) +++ ../src-rep/src/lib/aqua-query-builder/com/aquafold/querybuilder/datapane/tree/dbobject/ExtractedIndexColumnNode.java (revision ) @@ -51,22 +51,7 @@ this.columnDBObject = new BaseDBObject(DBObjectType.Column, entityColumn, indexColumnDBObject.getDBEntity(), indexColumnDBObject.getDatabase(), indexColumnDBObject.getSchema(), entityColumn.getName()); - if (afIndexColumn.getSortOrder() == SortOrder.Ascending) { - this._nodeName = afIndexColumn.getName() + " (ASC)"; - } - else { - if (afIndexColumn.getSortOrder() == SortOrder.Descending) { - this._nodeName = afIndexColumn.getName() + " (DESC)"; - } - else { - if (afIndexColumn.getSortOrder() == SortOrder.Random) { - this._nodeName = afIndexColumn.getName() + " (RAND)"; - } - else { - this._nodeName = afIndexColumn.getName() + " "; - } - } - } + this._nodeName = afIndexColumn.getSortOrder().getFormattedOrderBy(afIndexColumn.isIncluded()); } private static String getUniqueName(DBObject dbObject, DBObject indexDBObject) { Index: ../src-rep/src/lib/aqua-query-builder/com/aquafold/querybuilder/model/query/SortOrder.java IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== --- ../src-rep/src/lib/aqua-query-builder/com/aquafold/querybuilder/model/query/SortOrder.java (revision 56994) +++ ../src-rep/src/lib/aqua-query-builder/com/aquafold/querybuilder/model/query/SortOrder.java (revision ) @@ -46,4 +46,17 @@ public String getOrderBy() { return orderBy; } + + public String getFormattedOrderBy(boolean included){ + StringBuilder builder = new StringBuilder(); + if(this == SortOrder.None) { + builder.append(included ? "(INCLUDE)" : ""); + } else { + builder.append("("); + builder.append(included ? "INCLUDE " : ""); + builder.append(getOrderBy()); + builder.append(")"); + } + return builder.toString(); + } }