This commit is contained in:
wea_ondara
2022-08-15 19:36:01 +02:00
parent d532d92c0f
commit 2876c6d2e7
6 changed files with 69 additions and 12 deletions

View File

@@ -0,0 +1,36 @@
package jef.operations;
import jef.Queryable;
import jef.expressions.Expression;
import jef.expressions.SelectExpression;
import jef.expressions.selectable.DatabaseFunctionExpression;
import java.io.Serializable;
import java.util.List;
public class CountOp<T extends Serializable> implements Operation<T> {
private final Queryable<T> queryable;
public CountOp(Queryable<T> queryable) {
this.queryable = queryable;
}
@Override
public String getTableAlias() {
return String.valueOf((char) (queryable.getTableAlias().charAt(0) + (char) 1));
}
@Override
public Expression getExpression() {
return new SelectExpression(List.of(new DatabaseFunctionExpression("count(*)")), queryable.getExpression(), getTableAlias());
}
// @Override
// public CountOp<T> clone() {
// return new CountOp<>(queryable.clone());
// }
public long execute() {
return 0;//TODO implement when sql execution part is ready
}
}