Select APIs
function distinct(): self;
function columns(...$columns): self;
function alias(string $name): self;
function from(string $table_name): self;
function join($table_name, string $col1 = null, string $col2 = null): self;
function innerJoin($table_name, string $col1 = null, string $col2 = null): self;
function leftJoin($table_name, string $col1 = null, string $col2 = null): self;
function rightJoin($table_name, string $col1 = null, string $col2 = null): self;
function where($column, ?string $operator = null, $value = null): self;
function andWhere(string $column, ?string $operator, $value): self;
function orWhere(string $column, ?string $operator, $value): self;
function whereNot(string $column, ?string $operator, $value): self;
function andNot(string $column, ?string $operator, $value): self;
function whereIn(string $column, ...$value): self;
function orderBy($column, string $sort): self;
function groupBy($column): self;
function limit(int $count): self;
function offset(int $count): self;
function count(string $column, string $alias = ''): self;
function raw(string $sql): self;
function getSql();
function get();