Revision 45162 trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.db/org.gvsig.fmap.dal.db.jdbc/src/main/java/org/gvsig/fmap/dal/store/jdbc2/spi/operations/CountOperation.java
CountOperation.java | ||
---|---|---|
30 | 30 |
import java.util.List; |
31 | 31 |
import org.apache.commons.lang3.StringUtils; |
32 | 32 |
import org.gvsig.expressionevaluator.Code; |
33 |
import org.gvsig.expressionevaluator.Expression; |
|
33 | 34 |
import org.gvsig.expressionevaluator.ExpressionBuilder; |
34 | 35 |
import static org.gvsig.expressionevaluator.ExpressionBuilder.FUNCTION_LET; |
35 | 36 |
import org.gvsig.expressionevaluator.ExpressionUtils; |
36 | 37 |
import org.gvsig.fmap.dal.SQLBuilder.SelectBuilder; |
37 | 38 |
import org.gvsig.fmap.dal.exception.DataException; |
39 |
import org.gvsig.fmap.dal.expressionevaluator.FeatureAttributeEmulatorExpression; |
|
40 |
import org.gvsig.fmap.dal.feature.EditableFeatureAttributeDescriptor; |
|
38 | 41 |
import org.gvsig.fmap.dal.feature.FeatureQuery; |
39 | 42 |
import org.gvsig.fmap.dal.feature.FeatureQueryOrder; |
40 | 43 |
import org.gvsig.fmap.dal.feature.FeatureType; |
... | ... | |
127 | 130 |
for (String columnName : groupbyColumns) { |
128 | 131 |
if (this.featureType.getAttributeDescriptor(columnName) != null) { |
129 | 132 |
subselect.group_by(expbuilder.column(columnName)); |
133 |
} else if(this.featureType.getExtraColumns().get(columnName)!=null) { |
|
134 |
EditableFeatureAttributeDescriptor attr = this.featureType.getExtraColumns().get(columnName); |
|
135 |
subselect.group_by(expbuilder.column(columnName)); |
|
136 |
Expression exp = ((FeatureAttributeEmulatorExpression) attr.getFeatureAttributeEmulator()).getExpression(); |
|
137 |
subselect.column().value(exp.getCode().toValue()).as(columnName); |
|
130 | 138 |
} else { |
131 | 139 |
try { |
132 | 140 |
try { |
Also available in: Unified diff