class Grammar extends Grammar (View source)
| CompilesJsonPaths | |
| Macroable |
| static protected array | $macros | The registered string macros. | from Macroable |
| protected Connection | $connection | The connection used for escaping values. | from Grammar |
| protected string | $tablePrefix | The grammar table prefix. | from Grammar |
| protected array | $operators | The grammar specific operators. | |
| protected array | $bitwiseOperators | The grammar specific bitwise operators. | |
| protected string[] | $selectComponents | The components that make up a select clause. |
| static void | macro(string $name, object|callable $macro)
Register a custom macro. | from Macroable |
| static void | mixin(object $mixin, bool $replace = true)
Mix another object into the class. | from Macroable |
| static bool | hasMacro(string $name)
Checks if macro is registered. | from Macroable |
| static void | flushMacros()
Flush the existing macros. | from Macroable |
| static mixed | __callStatic(string $method, array $parameters)
Dynamically handle calls to the class. | from Macroable |
| mixed | __call(string $method, array $parameters)
Dynamically handle calls to the class. | from Macroable |
| array | wrapArray(array $values)
Wrap an array of values. | from Grammar |
| string | wrapTable(Expression|string $table)
Wrap a table in keyword identifiers. | from Grammar |
| string | wrap(Expression|string $value)
Wrap a value in keyword identifiers. | from Grammar |
| string | wrapAliasedValue(string $value)
Wrap a value that has an alias. | from Grammar |
| string | wrapAliasedTable(string $value)
Wrap a table that has an alias. | from Grammar |
| string | wrapSegments(array $segments)
Wrap the given value segments. | from Grammar |
| string | wrapValue(string $value)
Wrap a single string in keyword identifiers. | from Grammar |
| string | wrapJsonSelector(string $value)
Wrap the given JSON selector. | from Grammar |
| bool | isJsonSelector(string $value)
Determine if the given string is a JSON selector. | from Grammar |
| string | columnize(array $columns)
Convert an array of column names into a delimited string. | from Grammar |
| string | parameterize(array $values)
Create query parameter place-holders for an array. | from Grammar |
| string | parameter(mixed $value)
Get the appropriate query parameter place-holder for a value. | from Grammar |
| string | quoteString(string|array $value)
Quote the given string literal. | from Grammar |
| string | escape(string|float|int|bool|null $value, bool $binary = false)
Escapes a value for safe SQL embedding. | from Grammar |
| bool | isExpression(mixed $value)
Determine if the given value is a raw expression. | from Grammar |
| string|int|float | getValue(Expression|string|int|float $expression)
Transforms expressions to their scalar types. | from Grammar |
| string | getDateFormat()
Get the format for database stored dates. | from Grammar |
| string | getTablePrefix()
Get the grammar's table prefix. | from Grammar |
| $this | setTablePrefix(string $prefix)
Set the grammar's table prefix. | from Grammar |
| $this | setConnection(Connection $connection)
Set the grammar's database connection. | from Grammar |
| array | wrapJsonFieldAndPath(string $column)
Split the given JSON selector into the field and the optional path and wrap them separately. | from CompilesJsonPaths |
| string | wrapJsonPath(string $value, string $delimiter = '->')
Wrap the given JSON path. | from CompilesJsonPaths |
| string | wrapJsonPathSegment(string $segment)
Wrap the given JSON path segment. | from CompilesJsonPaths |
| string | compileSelect(Builder $query)
Compile a select query into SQL. | |
| array | compileComponents(Builder $query)
Compile the components necessary for a select clause. | |
| string | compileAggregate(Builder $query, array $aggregate)
Compile an aggregated select clause. | |
| string|null | compileColumns(Builder $query, array $columns)
Compile the "select *" portion of the query. | |
| string | compileFrom(Builder $query, string $table)
Compile the "from" portion of the query. | |
| string | compileJoins(Builder $query, array $joins)
Compile the "join" portions of the query. | |
| string | compileJoinLateral(JoinLateralClause $join, string $expression)
Compile a "lateral join" clause. | |
| string | compileWheres(Builder $query)
Compile the "where" portions of the query. | |
| array | compileWheresToArray(Builder $query)
Get an array of all the where clauses for the query. | |
| string | concatenateWhereClauses(Builder $query, array $sql)
Format the where clause statements into one string. | |
| string | whereRaw(Builder $query, array $where)
Compile a raw where clause. | |
| string | whereBasic(Builder $query, array $where)
Compile a basic where clause. | |
| string | whereBitwise(Builder $query, array $where)
Compile a bitwise operator where clause. | |
| string | whereIn(Builder $query, array $where)
Compile a "where in" clause. | |
| string | whereNotIn(Builder $query, array $where)
Compile a "where not in" clause. | |
| string | whereNotInRaw(Builder $query, array $where)
Compile a "where not in raw" clause. | |
| string | whereInRaw(Builder $query, array $where)
Compile a "where in raw" clause. | |
| string | whereNull(Builder $query, array $where)
Compile a "where null" clause. | |
| string | whereNotNull(Builder $query, array $where)
Compile a "where not null" clause. | |
| string | whereBetween(Builder $query, array $where)
Compile a "between" where clause. | |
| string | whereBetweenColumns(Builder $query, array $where)
Compile a "between" where clause. | |
| string | whereDate(Builder $query, array $where)
Compile a "where date" clause. | |
| string | whereTime(Builder $query, array $where)
Compile a "where time" clause. | |
| string | whereDay(Builder $query, array $where)
Compile a "where day" clause. | |
| string | whereMonth(Builder $query, array $where)
Compile a "where month" clause. | |
| string | whereYear(Builder $query, array $where)
Compile a "where year" clause. | |
| string | dateBasedWhere(string $type, Builder $query, array $where)
Compile a date based where clause. | |
| string | whereColumn(Builder $query, array $where)
Compile a where clause comparing two columns. | |
| string | whereNested(Builder $query, array $where)
Compile a nested where clause. | |
| string | whereSub(Builder $query, array $where)
Compile a where condition with a sub-select. | |
| string | whereExists(Builder $query, array $where)
Compile a where exists clause. | |
| string | whereNotExists(Builder $query, array $where)
Compile a where exists clause. | |
| string | whereRowValues(Builder $query, array $where)
Compile a where row values condition. | |
| string | whereJsonBoolean(Builder $query, array $where)
Compile a "where JSON boolean" clause. | |
| string | whereJsonContains(Builder $query, array $where)
Compile a "where JSON contains" clause. | |
| string | compileJsonContains(string $column, string $value)
Compile a "JSON contains" statement into SQL. | |
| string | whereJsonOverlaps(Builder $query, array $where)
Compile a "where JSON overlaps" clause. | |
| string | compileJsonOverlaps(string $column, string $value)
Compile a "JSON overlaps" statement into SQL. | |
| string | prepareBindingForJsonContains(mixed $binding)
Prepare the binding for a "JSON contains" statement. | |
| string | whereJsonContainsKey(Builder $query, array $where)
Compile a "where JSON contains key" clause. | |
| string | compileJsonContainsKey(string $column)
Compile a "JSON contains key" statement into SQL. | |
| string | whereJsonLength(Builder $query, array $where)
Compile a "where JSON length" clause. | |
| string | compileJsonLength(string $column, string $operator, string $value)
Compile a "JSON length" statement into SQL. | |
| string | compileJsonValueCast(string $value)
Compile a "JSON value cast" statement into SQL. | |
| string | whereFullText(Builder $query, array $where)
Compile a "where fulltext" clause. | |
| string | whereExpression(Builder $query, array $where)
Compile a clause based on an expression. | |
| string | compileGroups(Builder $query, array $groups)
Compile the "group by" portions of the query. | |
| string | compileHavings(Builder $query)
Compile the "having" portions of the query. | |
| string | compileHaving(array $having)
Compile a single having clause. | |
| string | compileBasicHaving(array $having)
Compile a basic having clause. | |
| string | compileHavingBetween(array $having)
Compile a "between" having clause. | |
| string | compileHavingNull(array $having)
Compile a having null clause. | |
| string | compileHavingNotNull(array $having)
Compile a having not null clause. | |
| string | compileHavingBit(array $having)
Compile a having clause involving a bit operator. | |
| string | compileHavingExpression(array $having)
Compile a having clause involving an expression. | |
| string | compileNestedHavings(array $having)
Compile a nested having clause. | |
| string | compileOrders(Builder $query, array $orders)
Compile the "order by" portions of the query. | |
| array | compileOrdersToArray(Builder $query, array $orders)
Compile the query orders to an array. | |
| string | compileRandom(string|int $seed)
Compile the random statement into SQL. | |
| string | compileLimit(Builder $query, int $limit)
Compile the "limit" portions of the query. | |
| string | compileGroupLimit(Builder $query)
Compile a group limit clause. | |
| string | compileRowNumber(string $partition, string $orders)
Compile a row number clause. | |
| string | compileOffset(Builder $query, int $offset)
Compile the "offset" portions of the query. | |
| string | compileUnions(Builder $query)
Compile the "union" queries attached to the main query. | |
| string | compileUnion(array $union)
Compile a single union statement. | |
| string | wrapUnion(string $sql)
Wrap a union subquery in parentheses. | |
| string | compileUnionAggregate(Builder $query)
Compile a union aggregate query into SQL. | |
| string | compileExists(Builder $query)
Compile an exists statement into SQL. | |
| string | compileInsert(Builder $query, array $values)
Compile an insert statement into SQL. | |
| string | compileInsertOrIgnore(Builder $query, array $values)
Compile an insert ignore statement into SQL. | |
| string | compileInsertGetId(Builder $query, array $values, string $sequence)
Compile an insert and get ID statement into SQL. | |
| string | compileInsertUsing(Builder $query, array $columns, string $sql)
Compile an insert statement using a subquery into SQL. | |
| string | compileInsertOrIgnoreUsing(Builder $query, array $columns, string $sql)
Compile an insert ignore statement using a subquery into SQL. | |
| string | compileUpdate(Builder $query, array $values)
Compile an update statement into SQL. | |
| string | compileUpdateColumns(Builder $query, array $values)
Compile the columns for an update statement. | |
| string | compileUpdateWithoutJoins(Builder $query, string $table, string $columns, string $where)
Compile an update statement without joins into SQL. | |
| string | compileUpdateWithJoins(Builder $query, string $table, string $columns, string $where)
Compile an update statement with joins into SQL. | |
| string | compileUpsert(Builder $query, array $values, array $uniqueBy, array $update)
Compile an "upsert" statement into SQL. | |
| array | prepareBindingsForUpdate(array $bindings, array $values)
Prepare the bindings for an update statement. | |
| string | compileDelete(Builder $query)
Compile a delete statement into SQL. | |
| string | compileDeleteWithoutJoins(Builder $query, string $table, string $where)
Compile a delete statement without joins into SQL. | |
| string | compileDeleteWithJoins(Builder $query, string $table, string $where)
Compile a delete statement with joins into SQL. | |
| array | prepareBindingsForDelete(array $bindings)
Prepare the bindings for a delete statement. | |
| array | compileTruncate(Builder $query)
Compile a truncate table statement into SQL. | |
| string | compileLock(Builder $query, bool|string $value)
Compile the lock into SQL. | |
| bool | supportsSavepoints()
Determine if the grammar supports savepoints. | |
| string | compileSavepoint(string $name)
Compile the SQL statement to define a savepoint. | |
| string | compileSavepointRollBack(string $name)
Compile the SQL statement to execute a savepoint rollback. | |
| string | wrapJsonBooleanSelector(string $value)
Wrap the given JSON selector for boolean values. | |
| string | wrapJsonBooleanValue(string $value)
Wrap the given JSON boolean value. | |
| string | concatenate(array $segments)
Concatenate an array of segments, removing empties. | |
| string | removeLeadingBoolean(string $value)
Remove the leading boolean from a statement. | |
| string | substituteBindingsIntoRawSql(string $sql, array $bindings)
Substitute the given bindings into the given raw SQL query. | |
| array | getOperators()
Get the grammar specific operators. | |
| array | getBitwiseOperators()
Get the grammar specific bitwise operators. |
Register a custom macro.
Mix another object into the class.
Checks if macro is registered.
Flush the existing macros.
Dynamically handle calls to the class.
Dynamically handle calls to the class.
Wrap an array of values.
Wrap a table in keyword identifiers.
Wrap a value in keyword identifiers.
Wrap a value that has an alias.
Wrap a table that has an alias.
Wrap the given value segments.
Wrap a single string in keyword identifiers.
Wrap the given JSON selector.
Determine if the given string is a JSON selector.
Convert an array of column names into a delimited string.
Create query parameter place-holders for an array.
Get the appropriate query parameter place-holder for a value.
Quote the given string literal.
Escapes a value for safe SQL embedding.
Determine if the given value is a raw expression.
Transforms expressions to their scalar types.
Get the format for database stored dates.
Get the grammar's table prefix.
Set the grammar's table prefix.
Set the grammar's database connection.
Split the given JSON selector into the field and the optional path and wrap them separately.
Wrap the given JSON path.
Wrap the given JSON path segment.
Compile a select query into SQL.
Compile the components necessary for a select clause.
Compile an aggregated select clause.
Compile the "select *" portion of the query.
Compile the "from" portion of the query.
Compile the "join" portions of the query.
Compile a "lateral join" clause.
Compile the "where" portions of the query.
Get an array of all the where clauses for the query.
Format the where clause statements into one string.
Compile a raw where clause.
Compile a basic where clause.
Compile a bitwise operator where clause.
Compile a "where in" clause.
Compile a "where not in" clause.
Compile a "where not in raw" clause.
For safety, whereIntegerInRaw ensures this method is only used with integer values.
Compile a "where in raw" clause.
For safety, whereIntegerInRaw ensures this method is only used with integer values.
Compile a "where null" clause.
Compile a "where not null" clause.
Compile a "between" where clause.
Compile a "between" where clause.
Compile a "where date" clause.
Compile a "where time" clause.
Compile a "where day" clause.
Compile a "where month" clause.
Compile a "where year" clause.
Compile a date based where clause.
Compile a where clause comparing two columns.
Compile a nested where clause.
Compile a where condition with a sub-select.
Compile a where exists clause.
Compile a where exists clause.
Compile a where row values condition.
Compile a "where JSON boolean" clause.
Compile a "where JSON contains" clause.
Compile a "JSON contains" statement into SQL.
Compile a "where JSON overlaps" clause.
Compile a "JSON overlaps" statement into SQL.
Prepare the binding for a "JSON contains" statement.
Compile a "where JSON contains key" clause.
Compile a "JSON contains key" statement into SQL.
Compile a "where JSON length" clause.
Compile a "JSON length" statement into SQL.
Compile a "JSON value cast" statement into SQL.
Compile a "where fulltext" clause.
Compile a clause based on an expression.
Compile the "group by" portions of the query.
Compile the "having" portions of the query.
Compile a single having clause.
Compile a basic having clause.
Compile a "between" having clause.
Compile a having null clause.
Compile a having not null clause.
Compile a having clause involving a bit operator.
Compile a having clause involving an expression.
Compile a nested having clause.
Compile the "order by" portions of the query.
Compile the query orders to an array.
Compile the random statement into SQL.
Compile the "limit" portions of the query.
Compile a group limit clause.
Compile a row number clause.
Compile the "offset" portions of the query.
Compile the "union" queries attached to the main query.
Compile a single union statement.
Wrap a union subquery in parentheses.
Compile a union aggregate query into SQL.
Compile an exists statement into SQL.
Compile an insert statement into SQL.
Compile an insert ignore statement into SQL.
Compile an insert and get ID statement into SQL.
Compile an insert statement using a subquery into SQL.
Compile an insert ignore statement using a subquery into SQL.
Compile an update statement into SQL.
Compile the columns for an update statement.
Compile an update statement without joins into SQL.
Compile an update statement with joins into SQL.
Compile an "upsert" statement into SQL.
Prepare the bindings for an update statement.
Compile a delete statement into SQL.
Compile a delete statement without joins into SQL.
Compile a delete statement with joins into SQL.
Prepare the bindings for a delete statement.
Compile a truncate table statement into SQL.
Compile the lock into SQL.
Determine if the grammar supports savepoints.
Compile the SQL statement to define a savepoint.
Compile the SQL statement to execute a savepoint rollback.
Wrap the given JSON selector for boolean values.
Wrap the given JSON boolean value.
Concatenate an array of segments, removing empties.
Remove the leading boolean from a statement.
Substitute the given bindings into the given raw SQL query.
Get the grammar specific operators.
Get the grammar specific bitwise operators.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/11.x/Illuminate/Database/Query/Grammars/Grammar.html