SqlBuilder
class SqlBuilder
Builds SQL query.
SqlBuilder is based on great library NotORM http://www.notorm.com written by Jakub Vrana.
Properties
protected string | $tableName | ||
protected Conventions | $conventions | ||
protected string | $delimitedTable | ||
protected array | $select | ||
protected array | $where | ||
protected array | $joinCondition | ||
protected array | $conditions | ||
protected array | $parameters | ||
protected array | $order | ||
protected int | $limit | ||
protected int | $offset | ||
protected string | $group | ||
protected string | $having | ||
protected array | $reservedTableNames | ||
protected array | $aliases | ||
protected string | $currentAlias |
Methods
string
getTableName()
No description
string
buildInsertQuery()
No description
string
buildUpdateQuery()
No description
string
buildDeleteQuery()
No description
string
getSelectQueryHash(array $columns = null)
Returns select query hash for caching.
string
buildSelectQuery(array $columns = null)
Returns SQL query.
array
getParameters()
No description
void
void
addSelect($columns, ...$params)
No description
array
getSelect()
No description
void
resetSelect()
No description
bool
addWhere($condition, ...$params)
No description
bool
addJoinCondition(string $tableChain, $condition, ...$params)
No description
bool
addCondition($condition, array $params, array $conditions, array $conditionsParameters)
No description
array
getConditions()
No description
void
addAlias(string $chain, string $alias)
Adds alias.
void
checkUniqueTableName(string $tableName, string $chain)
No description
void
addOrder($columns, ...$params)
No description
void
setOrder(array $columns, array $parameters)
No description
array
getOrder()
No description
void
setLimit(int|null $limit, int|null $offset)
No description
int|null
getLimit()
No description
int|null
getOffset()
No description
void
setGroup($columns, ...$params)
No description
string
getGroup()
No description
void
setHaving($having, ...$params)
No description
string
getHaving()
No description
string
buildSelect(array $columns)
No description
array
parseJoinConditions($joins, $joinConditions)
No description
void
getSortedJoins(string $table, $leftJoinDependency, $tableJoins, $finalJoins)
No description
void
parseJoins($joins, $query)
No description
string
parseJoinsCb($joins, $match)
No description
string
buildQueryJoins(array $joins, array $leftJoinConditions = [])
No description
array
buildJoinConditions()
No description
string
buildConditions()
No description
string
buildQueryEnd()
No description
string
tryDelimite(string $s)
No description
bool
addConditionComposition(array $columns, array $parameters, array $conditions, array $conditionsParameters)
No description
Details
at line 96
__construct(string $tableName, Explorer $explorer)
at line 108
string
getTableName()
at line 114
string
buildInsertQuery()
at line 120
string
buildUpdateQuery()
at line 136
string
buildDeleteQuery()
at line 150
string
getSelectQueryHash(array $columns = null)
Returns select query hash for caching.
at line 183
string
buildSelectQuery(array $columns = null)
Returns SQL query.
at line 231
array
getParameters()
at line 247
void
importConditions(SqlBuilder $builder)
at line 262
void
addSelect($columns, ...$params)
at line 272
array
getSelect()
at line 278
void
resetSelect()
at line 285
bool
addWhere($condition, ...$params)
at line 291
bool
addJoinCondition(string $tableChain, $condition, ...$params)
at line 301
protected bool
addCondition($condition, array $params, array $conditions, array $conditionsParameters)
at line 421
array
getConditions()
at line 430
void
addAlias(string $chain, string $alias)
Adds alias.
at line 440
protected void
checkUniqueTableName(string $tableName, string $chain)
at line 455
void
addOrder($columns, ...$params)
at line 462
void
setOrder(array $columns, array $parameters)
at line 469
array
getOrder()
at line 475
void
setLimit(int|null $limit, int|null $offset)
at line 482
int|null
getLimit()
at line 488
int|null
getOffset()
at line 494
void
setGroup($columns, ...$params)
at line 501
string
getGroup()
at line 507
void
setHaving($having, ...$params)
at line 514
string
getHaving()
at line 523
protected string
buildSelect(array $columns)
at line 529
protected array
parseJoinConditions($joins, $joinConditions)
at line 562
protected void
getSortedJoins(string $table, $leftJoinDependency, $tableJoins, $finalJoins)
at line 601
protected void
parseJoins($joins, $query)
at line 617
string
parseJoinsCb($joins, $match)
at line 727
protected string
buildQueryJoins(array $joins, array $leftJoinConditions = [])
at line 740
protected array
buildJoinConditions()
at line 750
protected string
buildConditions()
at line 758
protected string
buildQueryEnd()
at line 774
protected string
tryDelimite(string $s)
at line 784
protected bool
addConditionComposition(array $columns, array $parameters, array $conditions, array $conditionsParameters)
Traits
Strict class for better experience.