Zeta Components Manual :: Docs For Class ezcQuerySubSelect
Database::ezcQuerySubSelect
Class ezcQuerySubSelect
This class is used to contain subselects
The ezcSubQuery is used for creating correct subqueries inside ezcQuery object. The class holds a refenence to the ezcQuery object that this sub-query is for, and transfers the bindParam() and bindValue() PDO related calls to it.
Example:
- <?php
- // This will produce the following SQL:
- // SELECT * FROM Greetings WHERE age > 10 AND user IN ( ( SELECT lastname FROM users ) )
- // Create a subselect:
- // Use the created subselect to generate the full SQL:
- $stmt->execute();
- ?>
Source for this file: /Database/src/sqlabstraction/query_subselect.php
ezcQuery | --ezcQuerySelect | --ezcQuerySubSelect
Version: | //autogentag// |
Inherited Constants
From ezcQuerySelect: | |
---|---|
ezcQuerySelect::ASC
|
Sort the result ascending. |
ezcQuerySelect::DESC
|
Sort the result descending. |
Member Variables
protected ezcQuery |
$outerQuery
= null
Holds the outer query. |
Inherited Member Variables
From ezcQuerySelect | |
---|---|
protected |
ezcQuerySelect::$fromString
|
protected |
ezcQuerySelect::$groupString
|
protected |
ezcQuerySelect::$havingString
|
protected |
ezcQuerySelect::$lastInvokedMethod
|
protected |
ezcQuerySelect::$limitString
|
protected |
ezcQuerySelect::$orderString
|
protected |
ezcQuerySelect::$selectString
|
protected |
ezcQuerySelect::$whereString
|
From ezcQuery | |
protected |
ezcQuery::$db
|
public |
ezcQuery::$expr
|
Method Summary
public ezcQuerySubSelect |
__construct(
$outer
)
Constructs a new ezcQuerySubSelect object. |
public string |
bindParam(
&$param
, [ $placeHolder
= null] , [ $type
= PDO::PARAM_STR] , $param
)
Binds the parameter $param to the specified variable name $placeHolder. |
public string |
bindValue(
$value
, [ $placeHolder
= null] , [ $type
= PDO::PARAM_STR] )
Binds the value $value to the specified variable name $placeHolder. |
public string |
getQuery(
)
Returns the SQL string for the subselect. |
public ezcQuerySubSelect |
subSelect(
)
Returns ezcQuerySubSelect of deeper level. |
public string |
__toString(
)
Returns the SQL string for the subselect. |
Inherited Methods
From ezcQuerySelect | |
---|---|
public ezcQuerySelect |
ezcQuerySelect::__construct()
Constructs a new ezcQuery object. |
public string |
ezcQuerySelect::alias()
Returns SQL to create an alias |
protected ezcQuery |
ezcQuerySelect::doJoin()
Returns the SQL for a join or prepares $fromString for a join. |
public ezcQuery |
ezcQuerySelect::from()
Select which tables you want to select from. |
public static bool|string |
ezcQuerySelect::getDummyTableName()
Returns dummy table name. |
public string |
ezcQuerySelect::getQuery()
Returns the complete select query string. |
public ezcQuery |
ezcQuerySelect::groupBy()
Returns SQL that groups the result set by a given column. |
public ezcQuery |
ezcQuerySelect::having()
Returns SQL that set having by a given expression. |
public ezcQuery |
ezcQuerySelect::innerJoin()
Returns the SQL for an inner join or prepares $fromString for an inner join. |
public ezcQuery |
ezcQuerySelect::leftJoin()
Returns the SQL for a left join or prepares $fromString for a left join. |
public ezcQuerySelect |
ezcQuerySelect::limit()
Returns SQL that limits the result set. |
public ezcQuery |
ezcQuerySelect::orderBy()
Returns SQL that orders the result set by a given column. |
public void |
ezcQuerySelect::reset()
Resets the query object for reuse. |
public ezcQuery |
ezcQuerySelect::rightJoin()
Returns the SQL for a right join or prepares $fromString for a right join. |
public ezcQuery |
ezcQuerySelect::select()
Opens the query and selects which columns you want to return with the query. |
public ezcQuery |
ezcQuerySelect::selectDistinct()
Opens the query and uses a distinct select on the columns you want to return with the query. |
public ezcQuerySelect |
ezcQuerySelect::where()
Adds a where clause with logical expressions to the query. |
From ezcQuery | |
public ezcQuery |
ezcQuery::__construct()
Constructs a new ezcQuery that works on the database $db and with the aliases $aliases. |
public static array |
ezcQuery::arrayFlatten()
Returns all the elements in $array as one large single dimensional array. |
public string |
ezcQuery::bindParam()
Binds the parameter $param to the specified variable name $placeHolder.. |
public string |
ezcQuery::bindValue()
Binds the value $value to the specified variable name $placeHolder. |
public void |
ezcQuery::doBind()
Performs binding of variables bound with bindValue and bindParam on the statement $stmt. |
protected string |
ezcQuery::getIdentifier()
Returns the correct identifier for the alias $alias. |
protected array(string) |
ezcQuery::getIdentifiers()
Returns the correct identifiers for the aliases found in $aliases. |
public abstract string |
ezcQuery::getQuery()
Returns the query string for this query object. |
public bool |
ezcQuery::hasAliases()
Returns true if this object has aliases. |
public PDOStatement |
ezcQuery::prepare()
Returns a prepared statement from this query which can be used for execution. |
protected void |
ezcQuery::resetBinds()
Resets the bound values and parameters to empty. |
public void |
ezcQuery::setAliases()
Sets the aliases $aliases for this object. |
public ezcQuerySubSelect |
ezcQuery::subSelect()
Returns the ezcQuerySubSelect query object. |
public string |
ezcQuery::__toString()
Return SQL string for query. |
Methods
__construct
Constructs a new ezcQuerySubSelect object.
The subSelect() method of the ezcQuery object creates an object of this class, and passes itself as $outer parameter to this constructor.
Parameters:
Name | Type | Description |
---|---|---|
$outer |
ezcQuery |
Redefinition of:
Method | Description |
---|---|
ezcQuerySelect::__construct() |
Constructs a new ezcQuery object. |
bindParam
Binds the parameter $param to the specified variable name $placeHolder.
This method uses ezcQuery::bindParam() from the ezcQuery class in which the subSelect was called. Info about bound parameters are stored in the parent ezcQuery object that is stored in the $outer property.
The parameter $param specifies the variable that you want to bind. If $placeholder is not provided bind() will automatically create a placeholder for you. An automatic placeholder will be of the name 'ezcValue1', 'ezcValue2' etc.
Example:
- <?php
- $value = 2;
- )
- );
- $value = 4;
- $stmt->execute(); // subselect executed with 'id = 4'
- ?>
Parameters:
Name | Type | Description |
---|---|---|
$param |
&mixed | |
$placeHolder |
string | the name to bind with. The string must start with a colon ':'. |
&$param |
||
$type |
Redefinition of:
Method | Description |
---|---|
ezcQuery::bindParam() |
Binds the parameter $param to the specified variable name $placeHolder.. |
bindValue
Binds the value $value to the specified variable name $placeHolder.
This method uses ezcQuery::bindParam() from the ezcQuery class in which the subSelect was called. Info about bound parameters are stored in the parent ezcQuery object that is stored in the $outer property.
The parameter $value specifies the value that you want to bind. If $placeholder is not provided bindValue() will automatically create a placeholder for you. An automatic placeholder will be of the name 'ezcValue1', 'ezcValue2' etc.
Example:
- <?php
- $value = 2;
- )
- );
- $value = 4;
- $stmt->execute(); // subselect executed with 'id = 2'
- ?>
Parameters:
Name | Type | Description |
---|---|---|
$value |
mixed | |
$placeHolder |
string | the name to bind with. The string must start with a colon ':'. |
$type |
Redefinition of:
Method | Description |
---|---|
ezcQuery::bindValue() |
Binds the value $value to the specified variable name $placeHolder. |
getQuery
Returns the SQL string for the subselect.
Example:
- <?php
- $stmt->execute();
- ?>
Redefinition of:
Method | Description |
---|---|
ezcQuerySelect::getQuery() |
Returns the complete select query string. |
subSelect
Returns ezcQuerySubSelect of deeper level.
Used for making subselects inside subselects.
Example:
- <?php
- $value = 2;
- )
- );
- $value = 4;
- $stmt->execute(); // subselect executed with 'id = 2'
- ?>
Redefinition of:
Method | Description |
---|---|
ezcQuery::subSelect() |
Returns the ezcQuerySubSelect query object. |
__toString
Returns the SQL string for the subselect.
Example:
- <?php
- $stmt->execute();
- ?>
Redefinition of:
Method | Description |
---|---|
ezcQuery::__toString() |
Return SQL string for query. |