All Downloads are FREE. Search and download functionalities are using the official Maven repository.

db.sql.api.cmd.executor.method.ISelectMethod Maven / Gradle / Ivy

There is a newer version: 1.7.6-RC2
Show newest version
package db.sql.api.cmd.executor.method;

import db.sql.api.Cmd;
import db.sql.api.Getter;
import db.sql.api.cmd.basic.*;
import db.sql.api.cmd.executor.method.selectMethod.ISelectMethods;

public interface ISelectMethod, TABLE_FIELD extends ITableField,
        COLUMN extends Cmd>

        extends ISelectMethods {

    SELF selectDistinct();

    default SELF select1() {
        this.select((COLUMN) SQL1.INSTANCE);
        return (SELF) this;
    }

    default SELF selectAll() {
        this.select((COLUMN) SQLCmdAll.INSTANCE);
        return (SELF) this;
    }

    default SELF selectAll(IDataset dataset) {
        this.select((COLUMN) new SQLCmdAll(dataset));
        return (SELF) this;
    }

    SELF selectCount1();

    SELF selectCountAll();

    default SELF select(Class entity) {
        return this.select(entity, 1);
    }

    SELF select(Class entity, int storey);

    default SELF select(Class... entities) {
        return this.select(1, entities);
    }

    default SELF select(int storey, Class... entities) {
        for (Class entity : entities) {
            this.select(entity, storey);
        }
        return (SELF) this;
    }

    default  SELF selectIgnore(Getter column) {
        return this.selectIgnore(column, 1);
    }

     SELF selectIgnore(Getter column, int storey);

    default  SELF selectIgnore(Getter... columns) {
        return this.selectIgnore(1, columns);
    }

    default  SELF selectIgnore(int storey, Getter... columns) {
        for (Getter column : columns) {
            this.selectIgnore(column, storey);
        }
        return (SELF) this;
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy