JDatabaseQuery
Query Building Class.
Located in /libraries/joomla/database/query.php (line 136)
JDatabaseQuery (Subpackage Database)
| Class | Description |
|---|---|
JDatabaseQuerySQLSrv
|
Query Building Class. |
JDatabaseQueryMySQL
|
Query Building Class. |
object The
$autoIncrementField
= null (line 238)
JDatabaseQueryElement
$columns
= null (line 220)
JDatabaseQueryElement
$delete
= null (line 166)
JDatabaseQueryElement
$element
= null (line 154)
JDatabaseQueryElement
$from
= null (line 184)
JDatabaseQueryElement
$group
= null (line 208)
JDatabaseQueryElement
$having
= null (line 214)
JDatabaseQueryElement
$insert
= null (line 178)
JDatabaseQueryElement
$join
= null (line 190)
JDatabaseQueryElement
$order
= null (line 232)
JDatabaseQueryElement
$select
= null (line 160)
JDatabaseQueryElement
$set
= null (line 196)
string
$type
= '' (line 148)
JDatabaseQueryElement
$update
= null (line 172)
JDatabaseQueryElement
$values
= null (line 226)
JDatabaseQueryElement
$where
= null (line 202)
Class constructor.
- JDatabase $db: The database connector resource.
Casts a value to a char.
Ensure that the value is properly quoted before passing to the method.
Usage: $query->select($query->castAsChar('a'));
- string $value: The value to cast as a char.
- JDatabaseQuerySQLSrv::castAsChar() : Casts a value to a char.
Gets the number of characters in a string.
Note, use 'length' to find the number of bytes in a string.
Usage: $query->select($query->charLength('a'));
- string $field: A value.
- JDatabaseQuerySQLSrv::charLength() : Gets the function to determine the length of a character string.
Clear data from the query or a specific clause of the query.
- string $clause: Optionally, the name of the clause to clear, or nothing to clear the whole query.
Adds a column, or array of column names that would be used for an INSERT INTO statement.
- mixed $columns: A column name, or array of column names.
Concatenates an array of column names or values.
Usage: $query->select($query->concatenate(array('a', 'b')));
- array $values: An array of values to concatenate.
- string $separator: As separator to place between each value.
- JDatabaseQuerySQLSrv::concatenate() : Concatenates an array of column names or values.
- JDatabaseQueryMySQL::concatenate() : Concatenates an array of column names or values.
Gets the current date and time.
Usage: $query->where('published_up < '.$query->currentTimestamp());
- JDatabaseQuerySQLSrv::currentTimestamp() : Gets the current date and time.
Returns a PHP date() function compliant date format for the database driver.
This method is provided for use where the query object is passed to a function for modification. If you have direct access to the database object, it is recommended you use the getDateFormat method directly.
Add a table name to the DELETE clause of the query.
Note that you must not mix insert, update, delete and select method calls when building a query.
Usage: $query->delete('#__a')->where('id = 1');
- string $table: The name of the table to delete from.
Creates a formatted dump of the query for debugging purposes.
Usage: echo $query->dump();
Method to escape a string for usage in an SQL statement.
This method is provided for use where the query object is passed to a function for modification. If you have direct access to the database object, it is recommended you use the escape method directly.
Note that 'e' is an alias for this method as it is in JDatabase.
- string $text: The string to be escaped.
- boolean $extra: Optional parameter to provide extra escaping.
Add a table to the FROM clause of the query.
Note that while an array of tables can be provided, it is recommended you use explicit joins.
Usage: $query->select('*')->from('#__a');
- mixed $tables: A string or array of table names.
Add a grouping column to the GROUP clause of the query.
Usage: $query->group('id');
- mixed $columns: A string or array of ordering columns.
A conditions to the HAVING clause of the query.
Usage: $query->group('id')->having('COUNT(id) > 5');
- mixed $conditions: A string or array of columns.
- string $glue: The glue by which to join the conditions. Defaults to AND.
Add an INNER JOIN clause to the query.
Usage: $query->innerJoin('b ON b.id = a.id')->innerJoin('c ON c.id = b.id');
- string $condition: The join condition.
Add a table name to the INSERT clause of the query.
Note that you must not mix insert, update, delete and select method calls when building a query.
Usage: $query->insert('#__a')->set('id = 1'); $query->insert('#__a)->columns('id, title')->values('1,2')->values->('3,4'); $query->insert('#__a)->columns('id, title')->values(array('1,2', '3,4'));
- mixed $table: The name of the table to insert data into.
- boolean $incrementField: The name of the field to auto increment.
Add a JOIN clause to the query.
Usage: $query->join('INNER', 'b ON b.id = a.id);
- string $type: The type of join. This string is prepended to the JOIN keyword.
- string $conditions: A string or array of conditions.
Add a LEFT JOIN clause to the query.
Usage: $query->leftJoin('b ON b.id = a.id')->leftJoin('c ON c.id = b.id');
- string $condition: The join condition.
Get the length of a string in bytes.
Note, use 'charLength' to find the number of characters in a string.
Usage: query->where($query->length('a').' > 3');
- string $value: The string to measure.
- JDatabaseQuerySQLSrv::length() : Get the length of a string in bytes.
Get the null or zero representation of a timestamp for the database driver.
This method is provided for use where the query object is passed to a function for modification. If you have direct access to the database object, it is recommended you use the nullDate method directly.
Usage: $query->where('modified_date <> '.$query->nullDate());
- boolean $quoted: Optionally wraps the null date in database quotes (true by default).
Add a ordering column to the ORDER clause of the query.
Usage: $query->order('foo')->order('bar'); $query->order(array('foo','bar'));
- mixed $columns: A string or array of ordering columns.
Add an OUTER JOIN clause to the query.
Usage: $query->outerJoin('b ON b.id = a.id')->outerJoin('c ON c.id = b.id');
- string $condition: The join condition.
Method to quote and optionally escape a string to database requirements for insertion into the database.
This method is provided for use where the query object is passed to a function for modification. If you have direct access to the database object, it is recommended you use the quote method directly.
Note that 'q' is an alias for this method as it is in JDatabase.
Usage: $query->quote('fulltext'); $query->q('fulltext');
- string $text: The string to quote.
- boolean $escape: True to escape the string, false to leave it unchanged.
Wrap an SQL statement identifier name such as column, table or database names in quotes to prevent injection risks and reserved word conflicts.
This method is provided for use where the query object is passed to a function for modification. If you have direct access to the database object, it is recommended you use the quoteName method directly.
Note that 'qn' is an alias for this method as it is in JDatabase.
Usage: $query->quoteName('#__a'); $query->qn('#__a');
- string $name: The identifier name to wrap in quotes.
Add a RIGHT JOIN clause to the query.
Usage: $query->rightJoin('b ON b.id = a.id')->rightJoin('c ON c.id = b.id');
- string $condition: The join condition.
Add a single column, or array of columns to the SELECT clause of the query.
Note that you must not mix insert, update, delete and select method calls when building a query. The select method can, however, be called multiple times in the same query.
Usage: $query->select('a.*')->select('b.id'); $query->select(array('a.*', 'b.id'));
- mixed $columns: A string or an array of field names.
Add a single condition string, or an array of strings to the SET clause of the query.
Usage: $query->set('a = 1')->set('b = 2'); $query->set(array('a = 1', 'b = 2');
- mixed $conditions: A string or array of string conditions.
- string $glue: The glue by which to join the condition strings. Defaults to ,. Note that the glue is set on first use and cannot be changed.
Add a table name to the UPDATE clause of the query.
Note that you must not mix insert, update, delete and select method calls when building a query.
Usage: $query->update('#__foo')->set(...);
- string $table: A table to update.
Adds a tuple, or array of tuples that would be used as values for an INSERT INTO statement.
Usage: $query->values('1,2,3')->values('4,5,6'); $query->values(array('1,2,3', '4,5,6'));
- string $values: A single tuple, or array of tuples.
Add a single condition, or an array of conditions to the WHERE clause of the query.
Usage: $query->where('a = 1')->where('b = 2'); $query->where(array('a = 1', 'b = 2'));
- mixed $conditions: A string or array of where conditions.
- string $glue: The glue by which to join the conditions. Defaults to AND. Note that the glue is set on first use and cannot be changed.
Magic method to provide method alias support for quote() and quoteName().
- string $method: The called method.
- array $args: The array of arguments passed to the method.
Method to provide deep copy support to nested objects and arrays when cloning.
Magic function to get protected variable value
- string $name: The name of the variable.
Magic function to convert the query to a string.
- JDatabaseQuerySQLSrv::__toString() : Magic function to convert the query to a string.
JDatabaseQuery (Subpackage Database)