private int lookupOrCreateGroupExpr(RexNode expr) { for (int i = 0; i < convertedInputExprs.size(); i++) { RexNode convertedInputExpr = convertedInputExprs.get(i); if (expr.toString().equals(convertedInputExpr.toString())) { return i; } } // not found -- add it int index = convertedInputExprs.size(); addExpr(expr, null); return index; }
public void addGroupExpr(SqlNode expr) { RexNode convExpr = bb.convertExpression(expr); final RexNode rex = lookupGroupExpr(expr); if (rex != null) { return; // don't add duplicates, in e.g. "GROUP BY x, y, x" } groupExprs.add(expr); String name = nameMap.get(expr.toString()); addExpr(convExpr, name); final RelDataType type = convExpr.getType(); inputRefs.add(rexBuilder.makeInputRef(type, inputRefs.size())); }
private int lookupOrCreateGroupExpr(RexNode expr) { for (int i = 0; i < convertedInputExprs.size(); i++) { RexNode convertedInputExpr = convertedInputExprs.get(i); if (expr.toString().equals(convertedInputExpr.toString())) { return i; } } // not found -- add it int index = convertedInputExprs.size(); addExpr(expr, null); return index; }
private int lookupOrCreateGroupExpr(RexNode expr) { for (int i = 0; i < convertedInputExprs.size(); i++) { RexNode convertedInputExpr = convertedInputExprs.get(i); if (expr.toString().equals(convertedInputExpr.toString())) { return i; } } // not found -- add it int index = convertedInputExprs.size(); addExpr(expr, null); return index; }
public void addGroupExpr(SqlNode expr) { RexNode convExpr = bb.convertExpression(expr); final RexNode rex = lookupGroupExpr(expr); if (rex != null) { return; // don't add duplicates, in e.g. "GROUP BY x, y, x" } groupExprs.add(expr); String name = nameMap.get(expr.toString()); addExpr(convExpr, name); final RelDataType type = convExpr.getType(); inputRefs.add(rexBuilder.makeInputRef(type, inputRefs.size())); }
public void addGroupExpr(SqlNode expr) { RexNode convExpr = bb.convertExpression(expr); final RexNode rex = lookupGroupExpr(expr); if (rex != null) { return; // don't add duplicates, in e.g. "GROUP BY x, y, x" } groupExprs.add(expr); String name = nameMap.get(expr.toString()); addExpr(convExpr, name); final RelDataType type = convExpr.getType(); inputRefs.add(rexBuilder.makeInputRef(type, inputRefs.size())); }