int columnCount = expressions.size();
if (select.expressions.size() == columnCount)
return result;
LocalResult lr = new LocalResult(session, expressionArray, columnCount);
Calculator calculator;
int index = 0;
while (result.next()) {
calculator = new Calculator(result.currentRow());
for (int i = 0; i < columnCount; i++) {
Expression expr = expressions.get(i);
index = calculator.getIndex();
expr.calculate(calculator);
if (calculator.getIndex() == index) {
calculator.addResultValue(calculator.getValue(index));
calculator.addIndex();
}
}
lr.addRow(calculator.getResult().toArray(new Value[0]));
}
return lr;
}