本文整理汇总了Java中com.alibaba.druid.sql.ast.expr.SQLAggregateExpr.getMethodName方法的典型用法代码示例。如果您正苦于以下问题:Java SQLAggregateExpr.getMethodName方法的具体用法?Java SQLAggregateExpr.getMethodName怎么用?Java SQLAggregateExpr.getMethodName使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.alibaba.druid.sql.ast.expr.SQLAggregateExpr
的用法示例。
在下文中一共展示了SQLAggregateExpr.getMethodName方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: getExprFieldName
import com.alibaba.druid.sql.ast.expr.SQLAggregateExpr; //导入方法依赖的package包/类
private String getExprFieldName(SQLAggregateExpr expr){
StringBuilder field = new StringBuilder();
for (SQLExpr item :expr.getArguments()){
field.append(item.toString());
}
return expr.getMethodName()+"("+field.toString()+")";
}
示例2: visit
import com.alibaba.druid.sql.ast.expr.SQLAggregateExpr; //导入方法依赖的package包/类
@Override
public boolean visit(MySqlSelectQueryBlock x) {
Map<String, SQLSelectItem> selectItemMap = result.getMergeContext().getSelectItemMap();
Map<String, String> columnNameAliasMapping = result.getMergeContext().getColumnNameAliasMapping();
for (SQLSelectItem column : x.getSelectList()) {
String name = null;
if (column.getExpr() instanceof SQLAggregateExpr) {
SQLAggregateExpr expr = (SQLAggregateExpr) column.getExpr();
SQLExpr argument = expr.getArguments().get(0);
if (argument instanceof SQLAllColumnExpr) {
name = expr.getMethodName() + "(*)";
} else if(argument instanceof SQLIntegerExpr){
name = expr.getMethodName() + "(1)";
}else {
name = expr.getMethodName() + "(" + ((SQLName) argument).getSimpleName() + ")";
columnNameAliasMapping.put(((SQLName) argument).getSimpleName(), column.getAlias());
}
result.getMergeContext().setAggregate(true);
} else if (column.getExpr() instanceof SQLIdentifierExpr || column.getExpr() instanceof SQLPropertyExpr) {
name = ((SQLName) column.getExpr()).getSimpleName();
if (column.getAlias() != null) {
SQLName identifier = (SQLName) column.getExpr();
columnNameAliasMapping.put(identifier.getSimpleName(), column.getAlias());
}
} else {
// ignore SQLAllColumnExpr,SQLMethodInvokeExpr and etc.
}
selectItemMap.put(column.getAlias() == null ? name : column.getAlias(), column);
}
if (x.getDistionOption() == 2) {
result.getMergeContext().setDistinct(true);
}
return true;
}