db.sql.api.cmd.executor.method.selectMethod.ISelectMultiGetterMethod Maven / Gradle / Ivy
package db.sql.api.cmd.executor.method.selectMethod;
import db.sql.api.Cmd;
import db.sql.api.Getter;
import db.sql.api.cmd.GetterField;
import db.sql.api.cmd.basic.ITable;
import db.sql.api.cmd.basic.ITableField;
import java.util.function.Function;
public interface ISelectMultiGetterMethod, TABLE_FIELD extends ITableField> {
default SELF select(Getter... columns) {
return this.select(1, columns);
}
SELF select(int storey, Getter... columns);
default SELF select(boolean when, Getter... columns) {
if (!when) {
return (SELF) this;
}
return this.select(1, columns);
}
default SELF select(boolean when, int storey, Getter... columns) {
if (!when) {
return (SELF) this;
}
return this.select(storey, columns);
}
/**
* @param getterFields 利用 GetterFields 进行 数组构建
* @param f
* @return
*/
SELF select(GetterField[] getterFields, Function f);
default SELF select(boolean when, GetterField[] getterFields, Function f) {
if (!when) {
return (SELF) this;
}
return this.select(getterFields, f);
}
}