PgSQLAssembler
extends SQLAssembler
in package
Tags
Table of Contents
- $fieldQuoteChar : string
- 覆盖默认配置
- $offsetIsValid : bool
- offset()在limit()中已经传递了第二个参数时不再生效
- $params : string
- $sequence : string
- oracle序号名称
- $sql : string
- $table : string
- $tablePrefix : string
- 表前缀
- __construct() : mixed
- 初始化时可以指定表前缀
- add() : void
- 插入
- del() : mixed|void
- 删除
- find() : mixed|void
- 带分页功能的查询
- from() : string
- getParams() : string|array<string|int, mixed>
- getPrefix() : string
- 获取表前缀
- getSequence() : string
- getSQL() : string
- groupBy() : string
- having() : string
- insert() : string
- insert
- into() : string
- limit() : string
- PgSQL的limit如果有第二个参数, 那么和mysql的limit行为保持一致, 并且offset()不生效
- offset() : string
- on() : string
- orderBy() : string
- parseData() : string
- 解析数据
- parseFields() : string
- 解析字段
- parseGroup() : int|string
- 解析group by
- parseOrder() : int|string
- 解析order
- parseWhere() : string
- 解析where
- procedure() : string
- replace() : string
- replace
- select() : string
- select
- set() : string
- setSequence() : void
- 设置序号
- update() : mixed|void
- 更新
- where() : string
- beforeParseData() : mixed
- 解析数据之前执行
- getLimitSQLSegment() : string
- 生成分页SQL片段
- getTable() : string
- 获取表名
- insertDataToSQLSegment() : string
- 插入数据转换为SQL片段
- parseCondition() : array<string|int, mixed>
- 解析where条件
- setParams() : void
- setSQL() : void
- arrayToMultiAddFormat() : array<string|int, mixed>
- 将数组格式化成批量添加的格式
- combineWhereCondition() : string
- 组合where条件
- parseWhereFromHashMap() : string
- 解析关联数组
Properties
$fieldQuoteChar
覆盖默认配置
protected
string
$fieldQuoteChar
= ''
$offsetIsValid
offset()在limit()中已经传递了第二个参数时不再生效
protected
bool
$offsetIsValid
= true
$params
protected
string
$params
$sequence
oracle序号名称
protected
string
$sequence
= ''
$sql
protected
string
$sql
$table
protected
string
$table
$tablePrefix
表前缀
protected
string
$tablePrefix
Methods
__construct()
初始化时可以指定表前缀
public
__construct([string $tablePrefix = '' ]) : mixed
Parameters
- $tablePrefix : string = ''
Return values
mixed —add()
插入
public
add(string $table, array<string|int, mixed> &$data[, bool $multi = false ]) : void
Parameters
- $table : string
-
表名称
- $data : array<string|int, mixed>
-
要处理的数据(关联数组,批量插入会自动转换格式)
- $multi : bool = false
-
是否批量插入数据
Return values
void —del()
删除
public
del(string $table, string|array<string|int, mixed> $where) : mixed|void
Parameters
- $table : string
- $where : string|array<string|int, mixed>
Tags
Return values
mixed|void —find()
带分页功能的查询
public
find(string $table, string $fields, mixed $where[, array<string|int, mixed> &$page = ['p' => 1, 'limit' => 50] ][, mixed $order = null ][, mixed $groupBy = null ]) : mixed|void
Parameters
- $table : string
-
表名称, 复杂情况下, 以LEFT JOIN为例: table_a a LEFT JOIN table_b b ON a.id=b.aid
- $fields : string
-
要查询的字段 所有字段的时候为'*'
- $where : mixed
-
查询条件
- $page : array<string|int, mixed> = ['p' => 1, 'limit' => 50]
-
分页参数 默认返回50条记录
- $order : mixed = null
-
排序
- $groupBy : mixed = null
Tags
Return values
mixed|void —from()
public
from(string $table) : string
Parameters
- $table : string
Return values
string —getParams()
public
getParams() : string|array<string|int, mixed>
Return values
string|array<string|int, mixed> —getPrefix()
获取表前缀
public
getPrefix() : string
Return values
string —getSequence()
public
getSequence() : string
Return values
string —getSQL()
public
getSQL() : string
Return values
string —groupBy()
public
groupBy(string $group) : string
Parameters
- $group : string
Return values
string —having()
public
having(string $having) : string
Parameters
- $having : string
Return values
string —insert()
insert
public
insert(string $table, array<string|int, mixed> $data[, string $modifier = '' ][, array<string|int, mixed> &$params = [] ]) : string
Parameters
- $table : string
- $data : array<string|int, mixed>
- $modifier : string = ''
- $params : array<string|int, mixed> = []
Return values
string —into()
public
into(string $varName) : string
Parameters
- $varName : string
Return values
string —limit()
PgSQL的limit如果有第二个参数, 那么和mysql的limit行为保持一致, 并且offset()不生效
public
limit(int $start[, int|null $end = null ]) : string
Parameters
- $start : int
- $end : int|null = null
Return values
string —offset()
public
offset(int $offset) : string
Parameters
- $offset : int
Return values
string —on()
public
on(string $on) : string
Parameters
- $on : string
Return values
string —orderBy()
public
orderBy(mixed $order) : string
Parameters
- $order : mixed
Return values
string —parseData()
解析数据
public
parseData(mixed $data, array<string|int, mixed> &$params) : string
Parameters
- $data : mixed
- $params : array<string|int, mixed>
Return values
string —parseFields()
解析字段
public
parseFields(string|array<string|int, mixed> $fields) : string
Parameters
- $fields : string|array<string|int, mixed>
Return values
string —parseGroup()
解析group by
public
parseGroup(mixed $groupBy) : int|string
Parameters
- $groupBy : mixed
Return values
int|string —parseOrder()
解析order
public
parseOrder(mixed $order) : int|string
Parameters
- $order : mixed
Return values
int|string —parseWhere()
解析where
public
parseWhere(string|array<string|int, mixed> $where, array<string|int, mixed> &$params) : string
Parameters
- $where : string|array<string|int, mixed>
- $params : array<string|int, mixed>
Tags
Return values
string —procedure()
public
procedure(string $procedure) : string
Parameters
- $procedure : string
Return values
string —replace()
replace
public
replace(string $table[, string $modifier = '' ]) : string
Parameters
- $table : string
- $modifier : string = ''
Return values
string —select()
select
public
select([string $fields = '*' ][, string $modifier = '' ]) : string
Parameters
- $fields : string = '*'
- $modifier : string = ''
Return values
string —set()
public
set(mixed $data[, array<string|int, mixed> &$params = [] ]) : string
Parameters
- $data : mixed
- $params : array<string|int, mixed> = []
Return values
string —setSequence()
设置序号
public
setSequence(string $sequence) : void
Parameters
- $sequence : string
Return values
void —update()
更新
public
update(string $table, mixed $data, mixed $where) : mixed|void
Parameters
- $table : string
- $data : mixed
- $where : mixed
Tags
Return values
mixed|void —where()
public
where(string|array<string|int, mixed> $where, array<string|int, mixed> &$params) : string
Parameters
- $where : string|array<string|int, mixed>
- $params : array<string|int, mixed>
Tags
Return values
string —beforeParseData()
解析数据之前执行
protected
beforeParseData(array<string|int, mixed> &$data) : mixed
Parameters
- $data : array<string|int, mixed>
Return values
mixed —getLimitSQLSegment()
生成分页SQL片段
protected
getLimitSQLSegment(int $p, int $limit) : string
Parameters
- $p : int
- $limit : int
Return values
string —getTable()
获取表名
protected
getTable(string $table) : string
Parameters
- $table : string
Return values
string —insertDataToSQLSegment()
插入数据转换为SQL片段
protected
insertDataToSQLSegment(mixed $data[, bool $parseParams = true ][, array<string|int, mixed> &$params = [] ][, null &$sequenceKey = null ]) : string
Parameters
- $data : mixed
- $parseParams : bool = true
- $params : array<string|int, mixed> = []
- $sequenceKey : null = null
Return values
string —parseCondition()
解析where条件
protected
parseCondition(string $operator, string $field, string|array<string|int, mixed> $fieldConfig, bool $isMixedField, string $conditionConnector, string $connector, array<string|int, mixed> &$params) : array<string|int, mixed>
Parameters
- $operator : string
-
字段和值之间的操作符
- $field : string
-
字段名
- $fieldConfig : string|array<string|int, mixed>
-
字段值配置
- $isMixedField : bool
-
区别默认字段和复合字段(带括号的字段)
- $conditionConnector : string
-
每个条件之间的连接符
- $connector : string
-
每个字段之间的连接符
- $params : array<string|int, mixed>
-
包含字段值的数组(prepare之后传递的参数)
Tags
Return values
array<string|int, mixed> —setParams()
protected
setParams( $params) : void
Parameters
Return values
void —setSQL()
protected
setSQL( $sql) : void
Parameters
Return values
void —arrayToMultiAddFormat()
将数组格式化成批量添加的格式
private
arrayToMultiAddFormat(array<string|int, mixed> $data[, string|null $ignoreKey = null ]) : array<string|int, mixed>
Parameters
- $data : array<string|int, mixed>
- $ignoreKey : string|null = null
-
忽略指定键
Return values
array<string|int, mixed> —combineWhereCondition()
组合where条件
private
combineWhereCondition(array<string|int, mixed> $whereCondition) : string
Parameters
- $whereCondition : array<string|int, mixed>
Return values
string —parseWhereFromHashMap()
解析关联数组
private
parseWhereFromHashMap(array<string|int, mixed> $where, array<string|int, mixed> &$params) : string
Parameters
- $where : array<string|int, mixed>
- $params : array<string|int, mixed>