SqlazureQuery
扩展 SqlsrvQuerySQL Azure 查询构建类。
自 |
1.0 |
---|---|
包 |
Joomla 框架 |
方法
__clone
提供基本复制支持的方法。
__clone() :
推送到此类数据中的任何对象都应具有其自身的 __clone() 实现。此方法不支持在多维数组中复制对象。
自 |
1.0 |
---|
响应
void
__construct
类构造函数。
__construct(\Joomla\Database\DatabaseInterface db = null) :
__get
获取受保护变量值的魔术函数
__get( name) :
自 |
1.0 |
---|
参数
- name
string
变量的名称。
响应
混合
__toString
将查询转换为字符串的魔术函数。
__toString() :
自 |
1.0 |
---|
响应
string
完整的查询。
alias
为当前查询添加别名。
alias( alias) :
用法:$query->select('*')->from('#__a')->alias('subquery');
自 |
2.0.0 |
---|
参数
- alias
string
用于 JDatabaseQuery 的别名。
响应
$this
andWhere
使用 AND 和单个条件或条件数组扩展 WHERE 子句。
andWhere( conditions, glue = 'OR') :
用法:$query->where(array('a = 1', 'b = 2'))->andWhere(array('c = 3', 'd = 4')); 将生成:WHERE ((a = 1 AND b = 2) AND (c = 3 OR d = 4)
自 |
1.3.0 |
---|
参数
- conditions
mixed
WHERE 条件的字符串或数组。- glue
string
用于连接条件的粘合剂。默认为 OR。
响应
$this
bind
在查询执行之前,将变量添加到将在准备好的 SQL 语句中绑定的内部数组的方法。
bind(array|string|int key, &value, array|string dataType = ParameterType::STRING, length, mixed||string|int driverOptions = []) :
自 |
1.5.0 |
---|---|
抛出 |
|
参数
- key
array<string|int, mixed>|string|int
将在 SQL 查询中用于引用值的键。通常采用“:key”的形式,但也可能是整数。- value
mixed
将绑定的值。它可以是数组,在这种情况下它必须与 $key 的长度相同;该值通过引用传递以支持输出参数,例如存储过程可能支持的那些。- dataType
array<string|int, mixed>|string
对应于 SQL 数据类型的常量。它可以是数组,在这种情况下它必须与 $key 的长度相同- length
int
变量的长度。通常需要用于 OUTPUT 参数。- driverOptions
array<string|int, mixed>
要使用的可选驱动程序选项。
响应
$this
bindArray
绑定一组值并返回一组准备好的参数名称。
bindArray(mixed||string|int values, array|string dataType = ParameterType::INTEGER) : mixed||string|int
请注意,所有值都必须是相同的数据类型。
用法:$query->where('column in (' . implode(',', $query->bindArray($keyValues, $dataType)) . ')');
自 |
2.0.0 |
---|
参数
- values
array<string|int, mixed>
要绑定的值- dataType
array<string|int, mixed>|string
对应于 SQL 数据类型的常量。它可以是数组,在这种情况下它必须与 $key 的长度相同
响应
array<string|int, mixed>
包含参数名称的数组
call
将单个列或列数组添加到查询的 CALL 子句中。
call( columns) :
用法:$query->call('a.')->call('b.id'); $query->call(array('a.', 'b.id'));
自 |
1.0 |
---|---|
抛出 |
|
参数
- columns
mixed
字符串或字段名称数组。
响应
$this
castAs
将值转换为 char。
castAs( type, value, string length = null) :
确保在传递到该方法之前正确引用了该值。
用法:$query->select($query->castAs('CHAR', 'a'));
自 |
1.0 |
---|
参数
- type
string
要转换为的字符串类型。- value
string
要转换为 char 的值。- length
string|null
要转换为 char 的值。
响应
string
将值转换为 char 类型的 SQL 语句。
castAsChar
将值转换为 char。
castAsChar( value) :
确保在传递到该方法之前正确引用了该值。
用法:$query->select($query->castAsChar('a'));
自 |
1.0 |
---|---|
已弃用 |
3.0 使用 $query->castAs('CHAR', $value) |
参数
- value
string
要转换为 char 的值。
响应
string
将值转换为 char 类型的 SQL 语句。
charLength
获取函数以确定字符字符串的长度。
charLength( field, string|null operator = null, string|null condition = null) :
自 |
1.0 |
---|
参数
- field
string
值。- operator
string|null
charLength 整数值和 $condition 之间的比较运算符- condition
string|null
与 charLength 进行比较的整数值。
响应
string
所需的 char 长度调用。
clear
从查询或查询的特定子句中清除数据。
clear( clause = null) :
自 |
1.0 |
---|
参数
- clause
string
可选地,要清除的子句的名称,或者不清除整个查询。
响应
$this
columns
添加将用于 INSERT INTO 语句的列或列名称数组。
columns(array|string columns) :
自 |
1.0 |
---|
参数
- columns
array<string|int, mixed>|string
列名称或列名称数组。
响应
$this
concatenate
连接列名称或值的数组。
concatenate(string||string|int values, string|null separator = null) :
自 |
1.0 |
---|
参数
- values
array<string|int, string>
要连接的值数组。- separator
string|null
作为每个值之间要放置的分隔符。
响应
string
连接的值。
currentTimestamp
获取当前日期和时间。
currentTimestamp() :
自 |
1.0 |
---|
响应
string
dateAdd
添加到当前日期和时间。
dateAdd( date, interval, datePart) :
用法:$query->select($query->dateAdd());
在间隔前加上 -(负号)将导致使用减法。注意:并非所有驱动程序都支持所有单位。
link | |
---|---|
自 |
1.5.0 |
参数
- date
string
要添加到其中的日期的数据库引用的字符串表示形式。可以是日期或日期时间- interval
string
适当数量的单位的字符串表示形式- datePart
string
要执行添加操作的日期部分
响应
string
包含添加日期的适当 sql 的字符串
dateFormat
返回符合数据库驱动程序的 PHP date() 函数的日期格式。
dateFormat() :
此方法提供给将查询对象传递到函数以进行修改的地方。如果您直接访问数据库对象,建议您直接使用 getDateFormat 方法。
自 |
1.0 |
---|---|
抛出 |
|
响应
string
格式字符串。
day
用于获取从日期列中提取日期的字符串。
day( date) :
用法:$query->select($query->day($query->quoteName('dateColumn')));
自 |
1.0 |
---|
参数
- date
string
包含要提取的日期的日期列。
响应
string
返回从日期中提取日期的字符串。
delete
将表名称添加到查询的 DELETE 子句中。
delete( table = null) :
用法:$query->delete('#__a')->where('id = 1');
自 |
1.0 |
---|---|
抛出 |
|
参数
- table
string
要从中删除的表的名称。
响应
$this
dump
为调试目的创建查询的 HTML 格式化转储。
dump() :
用法:echo $query->dump();
自 |
1.0 |
---|---|
已弃用 |
3.0 已弃用,未提供替代方案 |
响应
string
e
escape 方法的别名
e( text, extra = false) :
自 |
1.0 |
---|---|
抛出 |
|
参数
- text
string
要转义的字符串。- extra
bool
可选参数以提供额外的转义。
响应
string
转义后的字符串。
escape
用于在 SQL 语句中使用转义字符串的方法。
escape( text, extra = false) :
此方法提供给将查询对象传递到函数以进行修改的地方。如果您直接访问数据库对象,建议您直接使用 escape 方法。
请注意,'e' 是此方法的别名,因为它在 DatabaseDriver 中。
自 |
1.0 |
---|---|
抛出 |
|
参数
- text
string
要转义的字符串。- extra
bool
可选参数以提供额外的转义。
响应
string
转义后的字符串。
exec
将单个列或列数组添加到查询的 EXEC 子句中。
exec(array|string columns) :
用法:$query->exec('a.')->exec('b.id'); $query->exec(array('a.', 'b.id'));
自 |
1.0 |
---|---|
抛出 |
|
参数
- columns
array<string|int, mixed>|string
字符串或字段名称数组。
响应
$this
extendWhere
使用与当前 WHERE 子句中不同的逻辑运算符,使用单个条件或条件数组扩展 WHERE 子句。
extendWhere( outerGlue, conditions, innerGlue = 'AND') :
用法:$query->where(array('a = 1', 'b = 2'))->extendWhere('XOR', array('c = 3', 'd = 4')); 将生成:WHERE ((a = 1 AND b = 2) XOR (c = 3 AND d = 4)
自 |
1.3.0 |
---|
参数
- outerGlue
string
用于将条件连接到当前 WHERE 条件的粘合剂。- conditions
mixed
WHERE 条件的字符串或数组。- innerGlue
string
用于连接条件的粘合剂。默认为 AND。
响应
$this
findInSet
在类似于集合的 varchar 中查找值。
findInSet( value, set) :
确保该值在传递到该方法之前是整数。
用法:$query->findInSet((int) $parent->id, 'a.assigned_cat_ids')
自 |
1.5.0 |
---|
参数
- value
string
要搜索的值。- set
string
值集。
响应
string
驱动程序的 MySQL find_in_set() 函数的表示形式。
fixGroupColumns
将缺少的列名称添加到 GROUP BY 子句中。
fixGroupColumns(array||string|int selectColumns) :
自 |
2.0.0 |
---|
参数
- selectColumns
array<string|int, array<string|int, mixed>>
来自 splitSqlExpression 方法的列数组。
响应
$this
fixSelectAliases
为子查询中的 select 语句中的列添加所需的别名。
fixSelectAliases() : array||string|int
自 |
2.0.0 |
---|
响应
array<string|int, array<string|int, mixed>>
包含添加缺失别名的列数组。
format
在格式字符串中查找并替换类似 sprintf 的标记。
format( format) :
每个标记采用以下形式之一: %% - 字面百分号。 %[t] - 其中 [t] 是类型说明符。 %[n]$[x] - 其中 [n] 是参数说明符,[t] 是类型说明符。
类型: a - 数字:替换文本被强制转换为数字类型,但不加引号或转义。 e - 转义:替换文本传递给 $this->escape()。 E - 转义(额外):替换文本传递给 $this->escape(),第二个参数为 true。 n - 名称引号:替换文本传递给 $this->quoteName()。 q - 引号:替换文本传递给 $this->quote()。 Q - 引号(不转义):替换文本传递给 $this->quote(),第二个参数为 false。 r - 原始:替换文本按原样使用。(小心)
日期类型
- 替换文本自动加引号(使用大写字母表示名称引号)。
- 替换文本应为日期格式的字符串或日期列的名称。 y/Y - 年 m/M - 月 d/D - 日 h/H - 小时 i/I - 分钟 s/S - 秒
不变类型
- 不接受参数。
- 参数索引不递增。 t - 替换文本是 $this->currentTimestamp() 的结果。 z - 替换文本是 $this->nullDate(false) 的结果。 Z - 替换文本是 $this->nullDate(true) 的结果。
用法: $query->format('SELECT %1$n FROM %2$n WHERE %3$n = %4$a', 'foo', '#__foo', 'bar', 1); 返回: SELECT foo
FROM #__foo
WHERE bar
= 1
注意:参数说明符是可选的,但建议为清晰起见。未指定标记使用的参数索引仅在使用时递增。
自 |
1.0 |
---|
参数
- format
string
格式化字符串。
响应
string
返回根据格式化字符串生成的字符串。
from
向查询的 FROM 子句添加表。
from(string|\Joomla\Database\DatabaseQuery table) :
用法: $query->select('')->from('#__a'); $query->select('')->from($subquery->alias('a'));
自 |
1.0 |
---|---|
抛出 |
|
参数
- table
string|DatabaseQuery
表的名称或具有别名设置的 DatabaseQuery 对象(或其子对象)。
响应
$this
getBounded
当键为 null 时,检索绑定参数数组并通过引用返回它。如果提供了键,则返回该项。
getBounded( key = null) :
自 |
1.5.0 |
---|
参数
- key
mixed
要检索的绑定变量键。
响应
混合
group
向查询的 GROUP 子句添加分组列。
group( columns) : \Joomla\Database\Sqlsrv\SqlsrvQuery
groupConcat
聚合函数,用于将输入值连接成一个字符串,并用分隔符分隔。
groupConcat( expression, separator = ',') :
用法: $query->groupConcat('id', ',');
自 |
2.0.0 |
---|
参数
- 表达式
string
要应用连接的表达式,这可能是列名或复杂的 SQL 语句。- separator
string
每个连接值的定界符
响应
string
连接成一个字符串的输入值,用定界符分隔
having
查询 HAVING 子句的条件。
having(array|string conditions, glue = 'AND') :
用法: $query->group('id')->having('COUNT(id) > 5');
自 |
1.0 |
---|
参数
- conditions
array<string|int, mixed>|string
列的字符串或数组。- glue
string
用于连接条件的粘合剂。默认为 AND。
响应
$this
hour
用于获取从日期列中提取小时的字符串。
hour( date) :
用法: $query->select($query->hour($query->quoteName('dateColumn')));
自 |
1.0 |
---|
参数
- date
string
包含要提取的小时的日期列。
响应
string
返回从日期中提取小时的字符串。
innerJoin
向查询添加 INNER JOIN 子句。
innerJoin( table, condition = null) :
用法: $query->innerJoin('b', 'b.id = a.id')->innerJoin('c', 'c.id = b.id');
自 |
1.0 |
---|
参数
- table
string
表的名称。- condition
string
连接条件。
响应
$this
insert
向查询的 INSERT 子句添加表名。
insert( table, incrementField = false) :
用法: $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'));
自 |
1.0 |
---|---|
抛出 |
|
参数
- table
string
要插入数据的表的名称。- 增量字段
bool
要自动增量的字段的名称。
响应
$this
isNullDatetime
生成一个 SQL 语句,用于检查列是否表示零或空日期时间。
isNullDatetime( column) :
用法: $query->where($query->isNullDatetime('modified_date'));
自 |
2.0.0 |
---|
参数
- 列
string
列名。
响应
string
join
向查询添加 JOIN 子句。
join( type, table, condition = null) :
用法: $query->join('INNER', 'b', 'b.id = a.id);
自 |
1.0 |
---|
参数
- type
string
连接的类型。此字符串将附加到 JOIN 关键字之前。- table
string
表的名称。- condition
string
连接条件。
响应
$this
leftJoin
向查询添加 LEFT JOIN 子句。
leftJoin( table, condition = null) :
用法: $query->leftJoin('b', 'b.id = a.id')->leftJoin('c', 'c.id = b.id');
自 |
1.0 |
---|
参数
- table
string
表的名称。- condition
string
连接条件。
响应
$this
length
获取字符串的字节长度。
length( value) :
自 |
1.0 |
---|
参数
- value
string
要测量的字符串。
响应
string
merge
通过一组运算符之一,将选择语句组合到当前查询中。
merge( name, \Joomla\Database\DatabaseQuery|string query) :
运算符:UNION、UNION ALL、EXCEPT 或 INTERSECT。
自 |
2.0.0 |
---|
参数
- name
string
带括号的集合运算符的名称。- 查询
DatabaseQuery|string
DatabaseQuery 对象或字符串。
响应
$this
minute
用于获取从日期列中提取分钟的字符串。
minute( date) :
用法: $query->select($query->minute($query->quoteName('dateColumn')));
自 |
1.0 |
---|
参数
- date
string
包含要提取的分钟的日期列。
响应
string
返回从日期中提取分钟的字符串。
month
用于获取从日期列中提取月份的字符串。
month( date) :
用法: $query->select($query->month($query->quoteName('dateColumn')));
自 |
1.0 |
---|
参数
- date
string
包含要提取的月份的日期列。
响应
string
返回从日期中提取月份的字符串。
nullDate
获取数据库驱动程序的时间戳的 null 或零表示形式。
nullDate( quoted = true) :
提供此方法是为了在将查询对象传递给函数以进行修改时使用。如果您直接访问数据库对象,建议您直接使用 nullDate 方法。
用法: $query->where('modified_date <> '.$query->nullDate());
自 |
1.0 |
---|---|
抛出 |
|
参数
- 引用
bool
可选地将 null 日期包装在数据库引号中(默认情况下为 true)。
响应
string
时间戳的 null 或零表示形式。
order
向查询的 ORDER 子句添加排序列。
order(array|string columns) :
用法: $query->order('foo')->order('bar'); $query->order(array('foo','bar'));
自 |
1.0 |
---|
参数
- columns
array<string|int, mixed>|string
排序列的字符串或数组。
响应
$this
orWhere
使用 OR 和单个条件或条件数组扩展 WHERE 子句。
orWhere( conditions, glue = 'AND') :
用法: $query->where(array('a = 1', 'b = 2'))->orWhere(array('c = 3', 'd = 4')); 将生成: WHERE ((a = 1 AND b = 2) OR (c = 3 AND d = 4)
自 |
1.3.0 |
---|
参数
- conditions
mixed
WHERE 条件的字符串或数组。- glue
string
用于连接条件的粘合剂。默认为 AND。
响应
$this
outerJoin
向查询添加 OUTER JOIN 子句。
outerJoin( table, condition = null) :
用法: $query->outerJoin('b', 'b.id = a.id')->leftJoin('c', 'c.id = b.id');
自 |
1.0 |
---|
参数
- table
string
表的名称。- condition
string
连接条件。
响应
$this
processLimit
用于使用所需的添加来修改以字符串格式存在的查询的方法,以使查询仅限于特定数量的结果,或从特定偏移量开始。
processLimit( query, limit, offset) :
自 |
2.0.0 |
---|
参数
- 查询
string
字符串格式的查询- 限制
int
结果集的限制- 偏移量
int
结果集的偏移量
响应
string
q
quote 方法的别名
q(array|string text, escape = true) :
自 |
1.0 |
---|---|
抛出 |
|
参数
- text
array<string|int, mixed>|string
要引用的字符串或字符串数组。- escape
bool
true(默认)转义字符串,false 保持不变。
响应
string
引用的输入字符串。
qn
quoteName 方法的别名
qn(array|string name, array|string as = null) : array|string
自 |
1.0 |
---|---|
抛出 |
|
参数
- name
array<string|int, mixed>|string
要包装在引号中的标识符名称,或要包装在引号中的标识符名称数组。每种类型都支持点符号名称。- 作为
array<string|int, mixed>|string
与 $name 关联的 AS 查询部分。它可以是字符串或数组,在后一种情况下,它必须与 $name 的长度相同;如果为 null,则字符串或数组元素将没有任何 AS 部分。
响应
array<string|int, mixed>|string
引号包装的名称,与 $name 的类型相同。
querySet
将单个查询设置为查询集。
querySet(\Joomla\Database\DatabaseQuery query) :
在此类型的 DatabaseQuery 上,您可以使用 union()、unionAll()、order() 和 setLimit()
用法: $query->querySet($query2->select('name')->from('#__foo')->order('id DESC')->setLimit(1)) ->unionAll($query3->select('name')->from('#__foo')->order('id')->setLimit(1)) ->order('name') ->setLimit(1)
自 |
2.0.0 |
---|
参数
- 查询
DatabaseQuery
DatabaseQuery 对象或字符串。
响应
$this
quote
用于将字符串引号引起来并可选地转义为数据库要求,以便将其插入数据库中的方法。
quote(array|string text, escape = true) :
提供此方法是为了在将查询对象传递给函数以进行修改时使用。如果您直接访问数据库对象,建议您直接使用 quote 方法。
请注意,“q”是此方法的别名,因为它在 DatabaseDriver 中也是如此。
用法: $query->quote('fulltext'); $query->q('fulltext'); $query->q(array('option', 'fulltext'));
自 |
1.0 |
---|---|
抛出 |
|
参数
- text
array<string|int, mixed>|string
要引用的字符串或字符串数组。- escape
bool
true(默认)转义字符串,false 保持不变。
响应
string
引用的输入字符串。
quoteName
将 SQL 语句标识符名称(例如列、表或数据库名称)包装在引号中,以防止注入风险和保留字冲突。
quoteName(array|string name, array|string as = null) : array|string
提供此方法是为了在将查询对象传递给函数以进行修改时使用。如果您直接访问数据库对象,建议您直接使用 quoteName 方法。
请注意,“qn”是此方法的别名,因为它在 DatabaseDriver 中也是如此。
用法: $query->quoteName('#__a'); $query->qn('#__a');
自 |
1.0 |
---|---|
抛出 |
|
参数
- name
array<string|int, mixed>|string
要包装在引号中的标识符名称,或要包装在引号中的标识符名称数组。每种类型都支持点符号名称。- 作为
array<string|int, mixed>|string
与 $name 关联的 AS 查询部分。它可以是字符串或数组,在后一种情况下,它必须与 $name 的长度相同;如果为 null,则字符串或数组元素将没有任何 AS 部分。
响应
array<string|int, mixed>|string
引号包装的名称,与 $name 的类型相同。
rand
获取返回随机浮点值的函数
rand() :
用法: $query->rand();
自 |
1.5.0 |
---|
响应
string
regexp
获取正则表达式运算符
regexp( value) :
用法: $query->where('field ' . $query->regexp($search));
自 |
1.5.0 |
---|
参数
- value
string
正则表达式模式。
响应
string
rightJoin
向查询添加 RIGHT JOIN 子句。
rightJoin( table, condition = null) :
用法: $query->rightJoin('b', 'b.id = a.id')->rightJoin('c', 'c.id = b.id');
自 |
1.0 |
---|
参数
- table
string
表的名称。- condition
string
连接条件。
响应
$this
second
用于获取从日期列中提取秒的字符串。
second( date) :
用法: $query->select($query->second($query->quoteName('dateColumn')));
自 |
1.0 |
---|
参数
- date
string
包含要提取的秒的日期列。
响应
string
返回从日期中提取秒的字符串。
select
向查询的 SELECT 子句添加单个列或列数组。
select(array|string columns) :
请注意,在构建查询时,您不能混合使用 insert、update、delete 和 select 方法调用。但是,可以在同一查询中多次调用 select 方法。
用法: $query->select('a.')->select('b.id'); $query->select(array('a.', 'b.id'));
自 |
1.0 |
---|---|
抛出 |
|
参数
- columns
array<string|int, mixed>|string
字符串或字段名称数组。
响应
$this
selectRowNumber
返回当前行的编号。
selectRowNumber( orderBy, orderColumnAlias) :
用法: $query->select('id'); $query->selectRowNumber('ordering,publish_up DESC', 'new_ordering'); $query->from('#__content');
自 |
2.0.0 |
---|---|
抛出 |
|
参数
- orderBy
string
窗口函数的排序表达式。- orderColumnAlias
string
新排序列的别名。
响应
$this
set
向查询的 SET 子句添加单个条件字符串或字符串数组。
set(array|string conditions, glue = ',') :
用法: $query->set('a = 1')->set('b = 2'); $query->set(array('a = 1', 'b = 2');
自 |
1.0 |
---|
参数
- conditions
array<string|int, mixed>|string
字符串或字符串条件数组。- glue
string
用于连接条件字符串的粘合剂。默认为 ,. 请注意,粘合剂在首次使用时设置,不能更改。
响应
$this
setLimit
如果数据库驱动程序支持,则设置结果集的偏移量和限制。
setLimit( limit, offset) :
用法:$query->setLimit(100, 0);(从第一条记录开始检索 100 行) $query->setLimit(50, 50);(从第 50 条记录开始检索 50 行)
自 |
2.0.0 |
---|
参数
- 限制
int
结果集的限制- 偏移量
int
结果集的偏移量
响应
$this
setQuery
允许将直接查询提供给数据库驱动程序的 setQuery() 方法,但仍然允许查询具有绑定变量。
setQuery(\Joomla\Database\DatabaseQuery|string sql) :
用法:$query->setQuery('select * from #__users');
自 |
1.0 |
---|
参数
- sql
DatabaseQuery|string
SQL 查询字符串或 DatabaseQuery 对象
响应
$this
splitSqlExpression
将 SQL 表达式字符串拆分为单个列的数组。
splitSqlExpression( string) : array||string|int
单行或行尾注释和多行注释将被剥离。始终至少返回一列。
自 |
2.0.0 |
---|
参数
- string
string
SQL 表达式输入字符串,例如 select 表达式。
响应
array<string|int, array<string|int, mixed>>
从输入字符串中分离出来的列,并被放置在一个数组中。
toQuerySet
从当前查询创建类型为 querySet 的 DatabaseQuery 对象。
toQuerySet() : \Joomla\Database\DatabaseQuery
用法:$query->select('name')->from('#__foo')->order('id DESC')->setLimit(1) ->toQuerySet() ->unionAll($query2->select('name')->from('#__foo')->order('id')->setLimit(1)) ->order('name') ->setLimit(1)
自 |
2.0.0 |
---|
响应
DatabaseQuery
一个新的 DatabaseQuery 对象。
unbind
用于取消绑定绑定变量的方法。
unbind(array|string|int key) :
自 |
2.0.0 |
---|
参数
- key
array<string|int, mixed>|string|int
要取消绑定的键或键数组。
响应
$this
union
将查询添加到当前查询的 UNION 中。
union(\Joomla\Database\DatabaseQuery|string query, distinct = true) :
用法:$query->union('SELECT name FROM #__foo') $query->union('SELECT name FROM #__foo', true)
自 |
1.0 |
---|
参数
- 查询
DatabaseQuery|string
要联合的 DatabaseQuery 对象或字符串。- distinct
bool
设置为 True 时,仅从联合中返回不同的行。
响应
$this
unionAll
将查询添加到当前查询的 UNION ALL 中。
unionAll(\Joomla\Database\DatabaseQuery|string query) :
用法:$query->unionAll('SELECT name FROM #__foo')
see | union |
---|---|
自 |
1.5.0 |
参数
- 查询
DatabaseQuery|string
要联合的 DatabaseQuery 对象或字符串。
响应
$this
update
将表名添加到查询的 UPDATE 子句中。
update( table) :
用法:$query->update('#__foo')->set(...);
自 |
1.0 |
---|---|
抛出 |
|
参数
- table
string
要更新的表。
响应
$this
validateRowNumber
验证传递给 selectRowNumber 方法的参数,并设置通用变量。
validateRowNumber( orderBy, orderColumnAlias) :
自 |
2.0.0 |
---|---|
抛出 |
|
参数
- orderBy
string
窗口函数的排序表达式。- orderColumnAlias
string
新排序列的别名。
响应
void
values
添加元组或元组数组,这些元组或元组数组将用作 INSERT INTO 语句的值。
values(array|string values) :
用法:$query->values('1,2,3')->values('4,5,6'); $query->values(array('1,2,3', '4,5,6'));
自 |
1.0 |
---|
参数
- values
array<string|int, mixed>|string
单个元组或元组数组。
响应
$this
where
将单个条件或条件数组添加到查询的 WHERE 子句中。
where(array|string conditions, glue = 'AND') :
用法:$query->where('a = 1')->where('b = 2'); $query->where(array('a = 1', 'b = 2'));
自 |
1.0 |
---|
参数
- conditions
array<string|int, mixed>|string
WHERE 条件的字符串或数组。- glue
string
用于连接条件的粘合剂。默认为 AND。请注意,粘合剂在第一次使用时设置,不能更改。
响应
$this
whereIn
向查询添加 WHERE IN 语句。
whereIn( keyName, mixed||string|int keyValues, array|string dataType = ParameterType::INTEGER) :
请注意,所有值都必须是相同的数据类型。
用法 $query->whereIn('id', [1, 2, 3]);
自 |
2.0.0 |
---|
参数
- keyName
string
WHERE 子句的键名- keyValues
array<string|int, mixed>
要匹配的值数组- dataType
array<string|int, mixed>|string
对应于 SQL 数据类型的常量。它可以是数组,在这种情况下,它必须与 $keyValues 的长度相同
响应
$this
whereNotIn
向查询添加 WHERE NOT IN 语句。
whereNotIn( keyName, mixed||string|int keyValues, array|string dataType = ParameterType::INTEGER) :
请注意,所有值都必须是相同的数据类型。
用法 $query->whereNotIn('id', [1, 2, 3]);
自 |
2.0.0 |
---|
参数
- keyName
string
WHERE 子句的键名- keyValues
array<string|int, mixed>
要匹配的值数组- dataType
array<string|int, mixed>|string
对应于 SQL 数据类型的常量。它可以是数组,在这种情况下,它必须与 $keyValues 的长度相同
响应
$this
year
用于获取从日期列中提取年份的字符串。
year( date) :
用法:$query->select($query->year($query->quoteName('dateColumn')));
自 |
1.0 |
---|
参数
- date
string
包含要提取的年份的日期列。
响应
string
返回从日期中提取年份的字符串。
属性
bounded
保存绑定对象的键值对。
类型(s)
array<string|int, mixed>
parameterMapping
参数类型的映射数组。
类型(s)
array<string|int, mixed>
sql
SQL 查询(如果提供了直接查询字符串)。
类型(s)
string
type
查询类型。
类型(s)
string
alias
查询别名。
类型(s)
string|null
autoIncrementField
自动递增插入字段元素。
类型(s)
bool
selectRowNumber
窗口函数的详细信息。
类型(s)
array<string|int, mixed>|null
nullDatetimeList
日期时间为零或空表示形式的列表。
类型(s)
array<string|int, string>
偏移量
结果集的偏移量。
类型(s)
int|null
限制
结果集的限制。
类型(s)
int|null
preparedIndex
bindArray 函数的内部索引,用于唯一准备好的参数。
类型(s)
int
bounded
保存绑定对象的键值对。
自 |
2.0.0 |
---|
类型(s)
array<string|int, mixed>
parameterMapping
参数类型的映射数组。
自 |
2.0.0 |
---|
类型(s)
array<string|int, mixed>
sql
SQL 查询(如果提供了直接查询字符串)。
自 |
1.0 |
---|
类型(s)
string
type
查询类型。
自 |
1.0 |
---|
类型(s)
string|null
alias
查询别名。
自 |
2.0.0 |
---|
类型(s)
string|null
autoIncrementField
自动递增插入字段元素。
自 |
1.0 |
---|
类型(s)
bool
merge
查询元素列表,其中可能包括 UNION、UNION ALL、EXCEPT 和 INTERSECT。
querySet
查询对象。
自 |
2.0.0 |
---|
类型(s)
DatabaseQuery
selectRowNumber
窗口函数的详细信息。
自 |
2.0.0 |
---|
类型(s)
array<string|int, mixed>|null
nullDatetimeList
日期时间为零或空表示形式的列表。
自 |
2.0.0 |
---|
类型(s)
array<string|int, mixed>
偏移量
结果集的偏移量。
自 |
2.0.0 |
---|
类型(s)
int|null
限制
结果集的限制。
自 |
2.0.0 |
---|
类型(s)
int|null
preparedIndex
bindArray 函数的内部索引,用于唯一准备好的参数。
自 |
2.0.0 |
---|
类型(s)
int