本文整理了Java中com.facebook.presto.sql.tree.GroupBy.isDistinct()
方法的一些代码示例,展示了GroupBy.isDistinct()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。GroupBy.isDistinct()
方法的具体详情如下:
包路径:com.facebook.presto.sql.tree.GroupBy
类名称:GroupBy
方法名:isDistinct
暂无
代码示例来源:origin: prestodb/presto
append(indent, "GROUP BY " + (node.getGroupBy().get().isDistinct() ? " DISTINCT " : "") + formatGroupBy(node.getGroupBy().get().getGroupingElements())).append('\n');
代码示例来源:origin: prestodb/presto
columnOnlyGroupingSets = enumerateGroupingSets(groupingSetAnalysis);
if (node.getGroupBy().get().isDistinct()) {
columnOnlyGroupingSets = columnOnlyGroupingSets.stream()
.distinct()
代码示例来源:origin: prestodb/presto
if (node.getGroupBy().get().isDistinct()) {
distinct = "[DISTINCT]";
代码示例来源:origin: rakam-io/rakam
@Override
protected Void visitQuerySpecification(QuerySpecification node, Integer indent) {
process(node.getSelect(), indent);
if (node.getFrom().isPresent()) {
append(indent, "FROM");
builder.append('\n');
append(indent, " ");
process(node.getFrom().get(), indent);
}
builder.append('\n');
if (node.getWhere().isPresent()) {
append(indent, "WHERE " + formatExpression(node.getWhere().get(), tableNameMapper, columnNameMapper, queryWithTables, escapeIdentifier))
.append('\n');
}
if (node.getGroupBy().isPresent()) {
append(indent, "GROUP BY " + (node.getGroupBy().get().isDistinct() ? " DISTINCT " : "") + formatGroupBy(node.getGroupBy().get().getGroupingElements())).append('\n');
}
if (node.getHaving().isPresent()) {
append(indent, "HAVING " + formatExpression(node.getHaving().get(), tableNameMapper, columnNameMapper, queryWithTables, escapeIdentifier))
.append('\n');
}
if (node.getOrderBy().isPresent()) {
process(node.getOrderBy().get(), indent);
}
if (node.getLimit().isPresent()) {
append(indent, "LIMIT " + node.getLimit().get())
.append('\n');
}
return null;
}
代码示例来源:origin: uk.co.nichesolutions.presto/presto-main
private List<List<FieldOrExpression>> analyzeGroupBy(QuerySpecification node, RelationType tupleDescriptor, AnalysisContext context, List<FieldOrExpression> outputExpressions)
{
List<Set<Expression>> computedGroupingSets = ImmutableList.of(); // empty list = no aggregations
if (node.getGroupBy().isPresent()) {
List<List<Set<Expression>>> enumeratedGroupingSets = node.getGroupBy().get().getGroupingElements().stream()
.map(GroupingElement::enumerateGroupingSets)
.collect(toImmutableList());
// compute cross product of enumerated grouping sets, if there are any
computedGroupingSets = computeGroupingSetsCrossProduct(enumeratedGroupingSets, node.getGroupBy().get().isDistinct());
checkState(!computedGroupingSets.isEmpty(), "computed grouping sets cannot be empty");
}
else if (!extractAggregates(node).isEmpty()) {
// if there are aggregates, but no group by, create a grand total grouping set (global aggregation)
computedGroupingSets = ImmutableList.of(ImmutableSet.of());
}
List<List<FieldOrExpression>> analyzedGroupingSets = computedGroupingSets.stream()
.map(groupingSet -> analyzeGroupingColumns(groupingSet, node, tupleDescriptor, context, outputExpressions))
.collect(toImmutableList());
analysis.setGroupingSets(node, analyzedGroupingSets);
return analyzedGroupingSets;
}
代码示例来源:origin: uk.co.nichesolutions.presto/presto-parser
append(indent, "GROUP BY " + (node.getGroupBy().get().isDistinct() ? " DISTINCT " : "") + formatGroupBy(node.getGroupBy().get().getGroupingElements())).append('\n');
代码示例来源:origin: com.facebook.presto/presto-parser
append(indent, "GROUP BY " + (node.getGroupBy().get().isDistinct() ? " DISTINCT " : "") + formatGroupBy(node.getGroupBy().get().getGroupingElements())).append('\n');
代码示例来源:origin: com.facebook.presto/presto-parser
if (node.getGroupBy().get().isDistinct()) {
distinct = "[DISTINCT]";
代码示例来源:origin: uk.co.nichesolutions.presto/presto-parser
if (node.getGroupBy().get().isDistinct()) {
distinct = "[DISTINCT]";
内容来源于网络,如有侵权,请联系作者删除!