/** * 获取jsqlparser中count的SelectItem */ private static List<SelectItem> countSelectItem() { Function function = new Function(); function.setName("COUNT"); List<Expression> expressions = new ArrayList<>(); LongValue longValue = new LongValue(1); ExpressionList expressionList = new ExpressionList(); expressions.add(longValue); expressionList.setExpressions(expressions); function.setParameters(expressionList); List<SelectItem> selectItems = new ArrayList<>(); SelectExpressionItem selectExpressionItem = new SelectExpressionItem(function); selectItems.add(selectExpressionItem); return selectItems; } }
retval.setParameters(expressionList); retval.setName(funcName); {if (true) return retval;}
jjtc000 = false; jjtn000.jjtSetLastToken(getToken(0)); retval.setParameters(expressionList); retval.setNamedParameters(namedExpressionList); retval.setName(funcName);
public void visit(Function function) { Function qfunction = new Function(); qfunction.setAllColumns(function.isAllColumns()); qfunction.setEscaped(function.isEscaped()); qfunction.setName(function.getName()); ExpressionList parameters = function.getParameters(); ExpressionList qualifiedParams; qualifiedParams = (ExpressionList) ItemsListQualifier.qualify(session, tableAliases, parameters); qfunction.setParameters(qualifiedParams); this._qualifiedExpression = qfunction; }
@Override public void visit(Function function) { log.debug("visit(function)" + function); String functionName = function.getName(); String newName = map.get(functionName); if (newName != null) function.setName(newName); // DIST returns radians, we want degrees. if (function.getName().equals("DIST")) { Function dist = new Function(); dist.setName("dist"); dist.setParameters(function.getParameters()); List<Expression> list = new ArrayList<Expression>(); list.add(dist); ExpressionList parameters = new ExpressionList(); parameters.setExpressions(list); function.setName("degrees"); function.setParameters(parameters); } }
/** * <p> * 获取jsqlparser中count的SelectItem * </p> */ private static List<SelectItem> countSelectItem() { Function function = new Function(); function.setName("COUNT"); List<Expression> expressions = new ArrayList<>(); LongValue longValue = new LongValue(1); ExpressionList expressionList = new ExpressionList(); expressions.add(longValue); expressionList.setExpressions(expressions); function.setParameters(expressionList); List<SelectItem> selectItems = new ArrayList<>(); SelectExpressionItem selectExpressionItem = new SelectExpressionItem(function); selectItems.add(selectExpressionItem); return selectItems; } }
public Lat(Function adqlFunction) { super(); Function latFunction = new Function(); latFunction.setName("lat"); latFunction.setParameters(adqlFunction.getParameters()); List<Expression> expressions = new ArrayList<Expression>(); expressions.add(latFunction); ExpressionList expressionList = new ExpressionList(); expressionList.setExpressions(expressions); setName("degrees"); setParameters(expressionList); }
public Longitude(Function adqlFunction) { super(); Function longFunction = new Function(); longFunction.setName("long"); longFunction.setParameters(adqlFunction.getParameters()); List<Expression> expressions = new ArrayList<Expression>(); expressions.add(longFunction); ExpressionList expressionList = new ExpressionList(); expressionList.setExpressions(expressions); setName("degrees"); setParameters(expressionList); }
protected void convertParameters() { // RA List<Expression> longExp = new ArrayList<Expression>(); longExp.add(ra); ExpressionList longParams = new ExpressionList(); longParams.setExpressions(longExp); Function longFunc = new Function(); longFunc.setName("radians"); longFunc.setParameters(longParams); // DEC List<Expression> latExp = new ArrayList<Expression>(); latExp.add(dec); ExpressionList latParams = new ExpressionList(); latParams.setExpressions(latExp); // Radius Function latFunc = new Function(); latFunc.setName("radians"); latFunc.setParameters(latParams); // Spoint List<Expression> expressions = new ArrayList<Expression>(); expressions.add(longFunc); expressions.add(latFunc); ExpressionList parameters = new ExpressionList(); parameters.setExpressions(expressions); setName("spoint"); setParameters(parameters); }
protected void convertParameters() { // Spoint Spoint spoint = new Spoint(coordsys, ra, dec); List<Expression> radiusExp = new ArrayList<Expression>(); radiusExp.add(radius); ExpressionList radiusParams = new ExpressionList(); radiusParams.setExpressions(radiusExp); // Radius Function radiusFunc = new Function(); radiusFunc.setName("radians"); radiusFunc.setParameters(radiusParams); // Scircle List<Expression> expressions = new ArrayList<Expression>(); expressions.add(spoint); expressions.add(radiusFunc); ExpressionList parameters = new ExpressionList(); parameters.setExpressions(expressions); setName("scircle"); setParameters(parameters); }
protected String generateCountQuery(String queryString) throws JSQLParserException { CCJSqlParserManager parserManager = new CCJSqlParserManager(); try { PlainSelect plainSelect = (PlainSelect) ((Select) parserManager.parse(new StringReader(queryString))).getSelectBody(); logger.debug("Query string {} contains select"); List items = plainSelect.getSelectItems(); if(items.size() != 1) { logger.error("I don't know how to generate a count query for {}", queryString); return null; } SelectExpressionItem item = (SelectExpressionItem) items.get(0); Function function = new Function(); function.setName("count"); function.setParameters(new ExpressionList(Arrays.asList(item.getExpression()))); item.setExpression(function); plainSelect.setOrderByElements(null); return plainSelect.toString(); } catch(Exception e) { logger.debug("Query string {} does not contain select", e); queryString = "SELECT count(*) " + queryString; PlainSelect plainSelect = (PlainSelect) ((Select) parserManager.parse(new StringReader(queryString))).getSelectBody(); plainSelect.setOrderByElements(null); return plainSelect.toString(); } }
protected String generateCountQuery(String queryString) throws JSQLParserException { CCJSqlParserManager parserManager = new CCJSqlParserManager(); try { PlainSelect plainSelect = (PlainSelect) ((Select) parserManager.parse(new StringReader(queryString))).getSelectBody(); logger.debug("Query string {} contains select"); List items = plainSelect.getSelectItems(); if(items.size() != 1) { logger.error("I don't know how to generate a count query for {}", queryString); return null; } SelectExpressionItem item = (SelectExpressionItem) items.get(0); Function function = new Function(); function.setName("count"); function.setParameters(new ExpressionList(Arrays.asList(item.getExpression()))); item.setExpression(function); plainSelect.setOrderByElements(null); return plainSelect.toString(); } catch(Exception e) { logger.debug("Query string {} does not contain select", e); queryString = "SELECT count(*) " + queryString; PlainSelect plainSelect = (PlainSelect) ((Select) parserManager.parse(new StringReader(queryString))).getSelectBody(); plainSelect.setOrderByElements(null); return plainSelect.toString(); } }
public void visit(Function function) { Function qfunction = new Function(); qfunction.setAllColumns(function.isAllColumns()); qfunction.setEscaped(function.isEscaped()); qfunction.setName(function.getName()); ExpressionList parameters = function.getParameters(); ExpressionList qualifiedParams; qualifiedParams = (ExpressionList) ItemsListQualifier.qualify(session, tableAliases, parameters); qfunction.setParameters(qualifiedParams); this._qualifiedExpression = qfunction; }
f.setParameters(implExprList); implExpr = convertToImplementation(f);
retval.setParameters(expressionList); retval.setName(funcName); {if ("" != null) return retval;}
retval.setParameters(expressionList); retval.setName(funcName); {if ("" != null) return retval;}
jjtc000 = false; jjtn000.jjtSetLastToken(getToken(0)); retval.setParameters(expressionList); retval.setNamedParameters(namedExpressionList); retval.setName(funcName);