MediaWiki master
Wikimedia\Rdbms\JoinGroupBase Class Reference

Shared code between SelectQueryBuilder and JoinGroup to represent tables and join conditions. More...

Inherited by Wikimedia\Rdbms\JoinGroup, and Wikimedia\Rdbms\SelectQueryBuilder.

Public Member Functions

 join ( $table, $alias=null, $conds=[])
 Inner join a table or group of tables.
 
 leftJoin ( $table, $alias=null, $conds=[])
 Left join a table or group of tables.
 
 straightJoin ( $table, $alias=null, $conds=[])
 Straight join a table or group of tables.
 
 table ( $table, $alias=null)
 Add a single table or a single parenthesized group.
 

Protected Member Functions

 getAutoAlias ()
 

Protected Attributes

array $joinConds = []
 
 $lastAlias
 
array $tables = []
 

Detailed Description

Shared code between SelectQueryBuilder and JoinGroup to represent tables and join conditions.

Access: internal

Definition at line 10 of file JoinGroupBase.php.

Member Function Documentation

◆ getAutoAlias()

Wikimedia\Rdbms\JoinGroupBase::getAutoAlias ( )
abstractprotected

◆ join()

Wikimedia\Rdbms\JoinGroupBase::join (   $table,
  $alias = null,
  $conds = [] 
)

Inner join a table or group of tables.

This should be called after table().

Parameters
string | JoinGroup | SelectQueryBuilder$tableThe table name, or a JoinGroup containing multiple tables, or a SelectQueryBuilder representing a subquery.
string | null$aliasThe alias name, or null to automatically generate an alias which will be unique to this builder
string | array$condsThe conditions for the ON clause
Returns
$this

Definition at line 84 of file JoinGroupBase.php.

Referenced by MediaWiki\Revision\ArchiveSelectQueryBuilder\joinComment(), MediaWiki\Revision\RevisionSelectQueryBuilder\joinComment(), and MediaWiki\ChangeTags\ChangeTagsStore\modifyDisplayQueryBuilder().

◆ leftJoin()

Wikimedia\Rdbms\JoinGroupBase::leftJoin (   $table,
  $alias = null,
  $conds = [] 
)

Left join a table or group of tables.

This should be called after table().

Parameters
string | JoinGroup | SelectQueryBuilder$tableThe table name, or a JoinGroup containing multiple tables, or a SelectQueryBuilder representing a subquery.
string | null$aliasThe alias name, or null to automatically generate an alias which will be unique to this builder
string | array$condsThe conditions for the ON clause
Returns
$this

Definition at line 68 of file JoinGroupBase.php.

Referenced by MediaWiki\ChangeTags\ChangeTagsStore\modifyDisplayQueryBuilder().

◆ straightJoin()

Wikimedia\Rdbms\JoinGroupBase::straightJoin (   $table,
  $alias = null,
  $conds = [] 
)

Straight join a table or group of tables.

This should be called after table().

Parameters
string | JoinGroup | SelectQueryBuilder$tableThe table name, or a JoinGroup containing multiple tables, or a SelectQueryBuilder representing a subquery.
string | null$aliasThe alias name, or null to automatically generate an alias which will be unique to this builder
string | array$condsThe conditions for the ON clause
Returns
$this

Definition at line 100 of file JoinGroupBase.php.

◆ table()

Wikimedia\Rdbms\JoinGroupBase::table (   $table,
  $alias = null 
)

Add a single table or a single parenthesized group.

Parameters
string | JoinGroup | SelectQueryBuilder$tableThe table to add. If this is a string, it is the table name. If it is a JoinGroup created by SelectQueryBuilder::newJoinGroup(), the group will be added. If it is a SelectQueryBuilder, a table subquery will be added.
string | null$aliasThe table alias, or null for no alias
Returns
$this

Definition at line 31 of file JoinGroupBase.php.

References Wikimedia\Rdbms\JoinGroupBase\getAutoAlias().

Referenced by MediaWiki\User\UserSelectQueryBuilder\__construct(), MediaWiki\Page\PageSelectQueryBuilder\__construct(), Wikimedia\Rdbms\SelectQueryBuilder\from(), and Wikimedia\Rdbms\SelectQueryBuilder\tables().

Member Data Documentation

◆ $joinConds

array Wikimedia\Rdbms\JoinGroupBase::$joinConds = []
protected

◆ $lastAlias

Wikimedia\Rdbms\JoinGroupBase::$lastAlias
protected

Definition at line 17 of file JoinGroupBase.php.

◆ $tables


The documentation for this class was generated from the following file: