1 Commits

Author SHA1 Message Date
mislayming
9ee1389562 Merge aaf2d46a56 into 75f623404d 2025-02-21 20:15:30 +08:00

View File

@@ -73,31 +73,15 @@ public class SqlGenerateUtils {
public String getSelect(StructQuery structQuery) { public String getSelect(StructQuery structQuery) {
String aggStr = structQuery.getAggregators().stream().map(this::getSelectField) String aggStr = structQuery.getAggregators().stream().map(this::getSelectField)
.collect(Collectors.joining(",")); .collect(Collectors.joining(","));
String result = String.join(",", structQuery.getGroups()); return CollectionUtils.isEmpty(structQuery.getGroups()) ? aggStr
if (StringUtils.isNotBlank(aggStr)) { : String.join(",", structQuery.getGroups()) + "," + aggStr;
if (!CollectionUtils.isEmpty(structQuery.getGroups())) {
result = String.join(",", structQuery.getGroups()) + "," + aggStr;
} else {
result = aggStr;
}
}
return result;
} }
public String getSelect(StructQuery structQuery, Map<String, String> deriveMetrics) { public String getSelect(StructQuery structQuery, Map<String, String> deriveMetrics) {
String aggStr = structQuery.getAggregators().stream() String aggStr = structQuery.getAggregators().stream()
.map(a -> getSelectField(a, deriveMetrics)).collect(Collectors.joining(",")); .map(a -> getSelectField(a, deriveMetrics)).collect(Collectors.joining(","));
String result = String.join(",", structQuery.getGroups()); return CollectionUtils.isEmpty(structQuery.getGroups()) ? aggStr
if (StringUtils.isNotBlank(aggStr)) { : String.join(",", structQuery.getGroups()) + "," + aggStr;
if (!CollectionUtils.isEmpty(structQuery.getGroups())) {
result = String.join(",", structQuery.getGroups()) + "," + aggStr;
} else {
result = aggStr;
}
}
return result;
} }
public String getSelectField(final Aggregator agg) { public String getSelectField(final Aggregator agg) {
@@ -156,10 +140,7 @@ public class SqlGenerateUtils {
public String generateWhere(StructQuery structQuery, ItemDateResp itemDateResp) { public String generateWhere(StructQuery structQuery, ItemDateResp itemDateResp) {
String whereClauseFromFilter = String whereClauseFromFilter =
sqlFilterUtils.getWhereClause(structQuery.getDimensionFilters()); sqlFilterUtils.getWhereClause(structQuery.getDimensionFilters());
String whereFromDate = ""; String whereFromDate = getDateWhereClause(structQuery.getDateInfo(), itemDateResp);
if (structQuery.getDateInfo() != null) {
whereFromDate = getDateWhereClause(structQuery.getDateInfo(), itemDateResp);
}
String mergedWhere = String mergedWhere =
mergeDateWhereClause(structQuery, whereClauseFromFilter, whereFromDate); mergeDateWhereClause(structQuery, whereClauseFromFilter, whereFromDate);
if (StringUtils.isNotBlank(mergedWhere)) { if (StringUtils.isNotBlank(mergedWhere)) {