Query
class Query
Query builder.
Properties
protected Connection | $connection | Database connection. | |
protected HelperInterface | $helper | Query helper. | |
protected Compiler | $compiler | Query compiler. | |
protected mixed | $table | Database table. | |
protected bool | $distinct | Select distinct? | |
protected array | $commonTableExpressions | Common table expressions. | |
protected array | $setOperations | Set operations. | |
protected array | $columns | Columns from which we are fetching data. | |
protected array | $wheres | WHERE clauses. | |
protected array | $joins | JOIN clauses. | |
protected array | $groupings | GROUP BY clauses. | |
protected array | $havings | HAVING clauses. | |
protected array | $orderings | ORDER BY clauses. | |
protected int|null | $limit | Limit. | |
protected int|null | $offset | Offset. | |
protected bool|string|null | $lock | Lock. | |
protected string|null | $prefix | Prefix. | |
protected bool | $inSubqueryContext | Is the query in subquery context? | |
static protected Closure|PaginationFactoryInterface | $paginationFactory | Pagination factory. |
Methods
Create a fresh compiler instance and clone set operation queries when we clone the query.
Resets the query to its default state.
Returns a new query builder instance.
Sets the query to subquery context.
Gets the pagination factory.
Returns the connection instance.
Returns query compiler instance.
Returns the common set operations.
Returns the set operations.
Returns the database table.
Is it a distict select?
Returns the columns from which we are fetching data.
Returns WHERE clauses.
Returns JOIN clauses.
Returns GROUP BY clauses.
Returns HAVING clauses.
Returns ORDER BY clauses.
Returns the limit.
Returns the offset.
Returns the lock.
Returns the prefix.
Executes the closure if the compiler is of the correct class.
Adds a recursive common table expression.
Adds a set operation.
Adds a UNION operation.
Adds a UNION ALL operation.
Adds a INTERSECT operation.
Adds a INTERSECT ALL operation.
Adds a EXCEPT operation.
Adds a EXCEPT ALL operation.
Sets the columns we want to select.
Sets the columns we want to select using raw SQL.
Select distinct?
Adds a raw WHERE clause.
Adds a raw OR WHERE clause.
Adds a date comparison clause.
Adds a date comparison clause.
Adds a column comparison clause.
Adds a column comparison clause.
Adds a BETWEEN clause.
Adds a OR BETWEEN clause.
Adds a NOT BETWEEN clause.
Adds a OR NOT BETWEEN clause.
Adds a date range clause.
Adds a date range clause.
Adds a date range clause.
Adds a date range clause.
Adds a IS NULL clause.
Adds a OR IS NULL clause.
Adds a IS NOT NULL clause.
Adds a OR IS NOT NULL clause.
Adds a raw JOIN clause.
Adds a raw LEFT OUTER JOIN clause.
Adds a GROUP BY clause.
Adds a raw HAVING clause.
Adds a OR HAVING clause.
Adds a raw OR HAVING clause.
Adds a raw ORDER BY clause.
Adds an ascending ORDER BY clause.
Adds a raw ascending ORDER BY clause.
Adds a descending ORDER BY clause.
Adds a raw descending ORDER BY clause.
Clears the ordering clauses.
Adds a LIMIT clause.
Adds a OFFSET clause.
Enable lock.
Enable shared lock.
Adds a query prefix.
Executes a SELECT query and returns the first row of the result set or NULL if nothing is found.
Executes a SELECT query and returns the first row of the result set or NULL if nothing is found.
Creates a result set.
Executes a SELECT query and returns an array containing all of the result set rows.
Executes a SELECT query and returns the value of the chosen column of the first row of the result set.
Executes a SELECT query and returns an array containing the values of the indicated 0-indexed column.
Executes a SELECT query and returns an array where the first column is used as keys and the second as values.
Executes a SELECT query and returns a generator that lets you iterate over the results.
Executes a SELECT query and returns a generator that lets you iterate over the results.
Returns the number of records that the query will return.
Paginates the results using a pagination instance.
Sets the selected column of the query to the chosen aggreate.
Returns the minimum value for the chosen column.
Returns the maximum value for the chosen column.
Returns sum of all the values in the chosen column.
Returns the average value for the chosen column.
Returns the number of rows.
Returns the number of distinct values of the chosen column.
Inserts data into the chosen table.
Inserts data into the chosen table and returns the auto increment id.
Updates data from the chosen table.
Increments column value.
Decrements column value.
Deletes data from the chosen table.
Details
at line 168
__construct(Connection $connection)
Constructor.
at line 180
__clone()
Create a fresh compiler instance and clone set operation queries when we clone the query.
at line 193
protected
reset()
Resets the query to its default state.
at line 208
Query
newInstance()
Returns a new query builder instance.
at line 218
$this
inSubqueryContext()
Sets the query to subquery context.
at line 230
static
setPaginationFactory(Closure|PaginationFactoryInterface $factory)
Sets the pagination factory.
at line 240
static PaginationFactoryInterface
getPaginationFactory()
Gets the pagination factory.
at line 257
Connection
getConnection()
Returns the connection instance.
at line 267
Compiler
getCompiler()
Returns query compiler instance.
at line 277
array
getCommonTableExpressions()
Returns the common set operations.
at line 287
array
getSetOperations()
Returns the set operations.
at line 297
mixed
getTable()
Returns the database table.
at line 307
bool
isDistinct()
Is it a distict select?
at line 317
array
getColumns()
Returns the columns from which we are fetching data.
at line 327
array
getWheres()
Returns WHERE clauses.
at line 337
array
getJoins()
Returns JOIN clauses.
at line 347
array
getGroupings()
Returns GROUP BY clauses.
at line 357
array
getHavings()
Returns HAVING clauses.
at line 367
array
getOrderings()
Returns ORDER BY clauses.
at line 377
int|null
getLimit()
Returns the limit.
at line 387
int|null
getOffset()
Returns the offset.
at line 397
bool|string|null
getLock()
Returns the lock.
at line 407
string|null
getPrefix()
Returns the prefix.
at line 419
$this
forCompiler(string $compilerClass, Closure $query)
Executes the closure if the compiler is of the correct class.
at line 437
$this
with(string $name, array $columns, Subquery $query)
Adds a common table expression.
at line 457
$this
withRecursive(string $name, array $columns, Subquery $query)
Adds a recursive common table expression.
at line 470
protected $this
setOperation(string $operation)
Adds a set operation.
at line 490
$this
union()
Adds a UNION operation.
at line 500
$this
unionAll()
Adds a UNION ALL operation.
at line 510
$this
intersect()
Adds a INTERSECT operation.
at line 520
$this
intersectAll()
Adds a INTERSECT ALL operation.
at line 530
$this
except()
Adds a EXCEPT operation.
at line 540
$this
exceptAll()
Adds a EXCEPT ALL operation.
at line 586
$this
select(array $columns)
Sets the columns we want to select.
at line 600
$this
selectRaw(string $sql, array $parameters = [])
Sets the columns we want to select using raw SQL.
at line 612
$this
distinct()
Select distinct?
at line 628
$this
where(array|Closure|string $column, string|null $operator = null, mixed $value = null, string $separator = 'AND')
Adds a WHERE clause.
at line 667
$this
whereRaw(array|string $column, array|string|null $operator = null, string|null $raw = null, string $separator = 'AND')
Adds a raw WHERE clause.
at line 692
$this
orWhere(array|Closure|string $column, string|null $operator = null, mixed $value = null)
Adds a OR WHERE clause.
at line 705
$this
orWhereRaw(array|string $column, array|string|null $operator = null, string|null $raw = null)
Adds a raw OR WHERE clause.
at line 719
$this
whereDate(string $column, string $operator, DateTimeInterface|string $date, string $separator = 'AND')
Adds a date comparison clause.
at line 742
$this
orWhereDate(string $column, string $operator, DateTimeInterface|string $date)
Adds a date comparison clause.
at line 756
$this
whereColumn(array|string $column1, string $operator, array|string $column2, string $separator = 'AND')
Adds a column comparison clause.
at line 778
$this
orWhereColumn(array|string $column1, string $operator, array|string $column2)
Adds a column comparison clause.
at line 793
$this
between(mixed $column, mixed $value1, mixed $value2, string $separator = 'AND', bool $not = false)
Adds a BETWEEN clause.
at line 816
$this
orBetween(mixed $column, mixed $value1, mixed $value2)
Adds a OR BETWEEN clause.
at line 829
$this
notBetween(mixed $column, mixed $value1, mixed $value2)
Adds a NOT BETWEEN clause.
at line 842
$this
orNotBetween(mixed $column, mixed $value1, mixed $value2)
Adds a OR NOT BETWEEN clause.
at line 857
$this
betweenDate(string $column, DateTimeInterface|string $date1, DateTimeInterface|string $date2, string $separator = 'AND', bool $not = false)
Adds a date range clause.
at line 879
orBetweenDate(string $column, DateTimeInterface|string $date1, DateTimeInterface|string $date2)
Adds a date range clause.
at line 891
notBetweenDate(string $column, DateTimeInterface|string $date1, DateTimeInterface|string $date2)
Adds a date range clause.
at line 903
orNotBetweenDate(string $column, DateTimeInterface|string $date1, DateTimeInterface|string $date2)
Adds a date range clause.
at line 917
$this
in(mixed $column, array|Raw|Subquery $values, string $separator = 'AND', bool $not = false)
Adds a IN clause.
at line 975
$this
isNull(mixed $column, string $separator = 'AND', bool $not = false)
Adds a IS NULL clause.
at line 994
$this
orIsNull(mixed $column)
Adds a OR IS NULL clause.
at line 1005
$this
isNotNull(mixed $column)
Adds a IS NOT NULL clause.
at line 1016
$this
orIsNotNull(mixed $column)
Adds a OR IS NOT NULL clause.
at line 1029
$this
exists(Subquery $query, string $separator = 'AND', bool $not = false)
Adds a EXISTS clause.
at line 1048
$this
orExists(Subquery $query)
Adds a OR EXISTS clause.
at line 1059
$this
notExists(Subquery $query)
Adds a NOT EXISTS clause.
at line 1070
$this
orNotExists(Subquery $query)
Adds a OR NOT EXISTS clause.
at line 1086
$this
join(string $table, Closure|string $column1 = null, string $operator = null, string $column2 = null, string $type = 'INNER', bool $raw = false)
Adds a JOIN clause.
at line 1121
$this
joinRaw(string $table, string $column1, string $operator, string $raw, string $type = 'INNER')
Adds a raw JOIN clause.
at line 1135
$this
leftJoin(string $table, Closure|string $column1 = null, string $operator = null, string $column2 = null)
Adds a LEFT OUTER JOIN clause.
at line 1149
$this
leftJoinRaw(string $table, string $column1, string $operator, string $raw)
Adds a raw LEFT OUTER JOIN clause.
at line 1160
$this
groupBy(array|string $columns)
Adds a GROUP BY clause.
at line 1176
$this
having(Raw|string $column, string $operator, mixed $value, string $separator = 'AND')
Adds a HAVING clause.
at line 1198
$this
havingRaw(string $raw, string $operator, mixed $value, string $separator = 'AND')
Adds a raw HAVING clause.
at line 1211
$this
orHaving(string $column, string $operator, mixed $value)
Adds a OR HAVING clause.
at line 1224
$this
orHavingRaw(string $raw, string $operator, mixed $value)
Adds a raw OR HAVING clause.
at line 1236
$this
orderBy(array|Raw|string $columns, string $order = 'ASC')
Adds a ORDER BY clause.
at line 1255
$this
orderByRaw(string $raw, array $parameters = [], string $order = 'ASC')
Adds a raw ORDER BY clause.
at line 1266
$this
ascending(array|string $columns)
Adds an ascending ORDER BY clause.
at line 1278
$this
ascendingRaw(string $raw, array $parameters = [])
Adds a raw ascending ORDER BY clause.
at line 1289
$this
descending(array|string $columns)
Adds a descending ORDER BY clause.
at line 1301
$this
descendingRaw(string $raw, array $parameters = [])
Adds a raw descending ORDER BY clause.
at line 1311
$this
clearOrderings()
Clears the ordering clauses.
at line 1324
$this
limit(int $limit)
Adds a LIMIT clause.
at line 1337
$this
offset(int $offset)
Adds a OFFSET clause.
at line 1350
$this
lock(bool|string $lock = true)
Enable lock.
at line 1362
$this
sharedLock()
Enable shared lock.
at line 1373
$this
prefix(string $prefix)
Adds a query prefix.
at line 1386
protected mixed
fetchFirst(mixed ...$fetchMode)
Executes a SELECT query and returns the first row of the result set or NULL if nothing is found.
at line 1398
mixed
first()
Executes a SELECT query and returns the first row of the result set or NULL if nothing is found.
at line 1409
protected ResultSet
createResultSet(array $results)
Creates a result set.
at line 1421
protected array|ResultSet
fetchAll(bool $returnResultSet, mixed ...$fetchMode)
Executes a SELECT query and returns an array containing all of the result set rows.
at line 1435
ResultSet
all()
Executes a SELECT query and returns an array containing all of the result set rows.
at line 1446
mixed
column(string $column = null)
Executes a SELECT query and returns the value of the chosen column of the first row of the result set.
at line 1464
array
columns(string $column = null)
Executes a SELECT query and returns an array containing the values of the indicated 0-indexed column.
at line 1483
array
pairs(string $key, string $value)
Executes a SELECT query and returns an array where the first column is used as keys and the second as values.
at line 1498
protected Generator
fetchYield(mixed ...$fetchMode)
Executes a SELECT query and returns a generator that lets you iterate over the results.
at line 1510
Generator
yield()
Executes a SELECT query and returns a generator that lets you iterate over the results.
at line 1520
protected int
paginationCount()
Returns the number of records that the query will return.
at line 1542
ResultSet
paginate(int|null $itemsPerPage = null, array $options = [])
Paginates the results using a pagination instance.
at line 1570
batch(Closure $processor, int $batchSize = 1000, int $offsetStart = 0, int|null $offsetEnd = null)
Fetches data in batches and passes them to the processor closure.
at line 1611
protected mixed
aggregate(string $function, array|string $column)
Sets the selected column of the query to the chosen aggreate.
Executes the query and returns the result if not in subquery context.
at line 1629
mixed
min(string $column)
Returns the minimum value for the chosen column.
at line 1640
mixed
max(string $column)
Returns the maximum value for the chosen column.
at line 1651
mixed
sum(string $column)
Returns sum of all the values in the chosen column.
at line 1662
mixed
avg(string $column)
Returns the average value for the chosen column.
at line 1673
int
count(string $column = '*')
Returns the number of rows.
at line 1684
int
countDistinct(array|string $column)
Returns the number of distinct values of the chosen column.
at line 1695
bool
insert(array $values = [])
Inserts data into the chosen table.
at line 1709
false|int
insertAndGetId(array $values, string $primaryKey = 'id')
Inserts data into the chosen table and returns the auto increment id.
at line 1720
int
update(array $values)
Updates data from the chosen table.
at line 1734
int
increment(string $column, int $increment = 1)
Increments column value.
at line 1746
int
decrement(string $column, int $decrement = 1)
Decrements column value.
at line 1756
int
delete()
Deletes data from the chosen table.