classTableExpressionWithOptFromClauseOptWhereClauseOptGroupClauseOptHavingClauseOptOrderClauseOptLi_3201a72e

final class TableExpressionWithOptFromClauseOptWhereClauseOptGroupClauseOptHavingClauseOptOrderClauseOptLi_3201a72e
    implements TableExpressionForm
    uses Assertion
Public API: explicitly declared with @visibility public.

The table_expression SQL value; generated by bin/build-models.php.

Accept a structured SQL valuedoctest
$write = static fn (\SqlSemantics\Statement\Model\MySql\Value\TableExpressionWithOptFromClauseOptWhereClauseOptGroupClauseOptHavingClauseOptOrderClauseOptLi_3201a72e $value): string => \SqlSemantics\Statement\Writer::render($value);
    $write instanceof \Closure // => true

Properties§

public OptGroupClauseForm $optGroupClause
public OptHavingClauseForm $optHavingClause
public OptLimitClauseForm $optLimitClause
public OptProcedureAnalyseClauseForm $optProcedureAnalyseClause
public OptSelectLockTypeForm $optSelectLockType
public Comments $comments = new \SqlSemantics\Statement\Comments()

Methods§

public function __construct(
    public OptFromClauseForm $from,
    public OptWhereClauseForm $where,
    public OptGroupClauseForm $optGroupClause,
    public OptHavingClauseForm $optHavingClause,
    public OptOrderClauseForm $orderBy,
    public OptLimitClauseForm $optLimitClause,
    public OptProcedureAnalyseClauseForm $optProcedureAnalyseClause,
    public OptSelectLockTypeForm $optSelectLockType,
    public Comments $comments = new \SqlSemantics\Statement\Comments(),
)

Supplies the SQL values of this form; comments are kept by the position of the symbol each precedes.

Parameters

$fromOptFromClauseForm
$whereOptWhereClauseForm
$optGroupClauseOptGroupClauseForm
$optHavingClauseOptHavingClauseForm
$orderByOptOrderClauseForm
$optLimitClauseOptLimitClauseForm
$optProcedureAnalyseClauseOptProcedureAnalyseClauseForm
$optSelectLockTypeOptSelectLockTypeForm
$commentsComments
Calls 3
public function write(Writer $writer): void
public function withFrom(OptFromClauseForm $from): self

Returns a copy with a new from, preserving every other field.

Parameters

Returns

self
Calls 1
public function withWhere(OptWhereClauseForm $where): self

Returns a copy with a new where, preserving every other field.

Parameters

Returns

self
Calls 1
public function withOptGroupClause(OptGroupClauseForm $optGroupClause): self

Returns a copy with a new optGroupClause, preserving every other field.

Parameters

$optGroupClauseOptGroupClauseForm

Returns

self
Calls 1
public function withOptHavingClause(OptHavingClauseForm $optHavingClause): self

Returns a copy with a new optHavingClause, preserving every other field.

Parameters

$optHavingClauseOptHavingClauseForm

Returns

self
Calls 1
public function withOrderBy(OptOrderClauseForm $orderBy): self

Returns a copy with a new orderBy, preserving every other field.

Parameters

Returns

self
Calls 1
public function withOptLimitClause(OptLimitClauseForm $optLimitClause): self

Returns a copy with a new optLimitClause, preserving every other field.

Parameters

$optLimitClauseOptLimitClauseForm

Returns

self
Calls 1
public function withOptProcedureAnalyseClause(OptProcedureAnalyseClauseForm $optProcedureAnalyseClause): self

Returns a copy with a new optProcedureAnalyseClause, preserving every other field.

Parameters

$optProcedureAnalyseClauseOptProcedureAnalyseClauseForm

Returns

self
Calls 1
public function withOptSelectLockType(OptSelectLockTypeForm $optSelectLockType): self

Returns a copy with a new optSelectLockType, preserving every other field.

Parameters

$optSelectLockTypeOptSelectLockTypeForm

Returns

self
Calls 1
public function withComments(Comments $comments): self

Returns a copy with a new comments, preserving every other field.

Parameters

$commentsComments

Returns

self
Calls 1