ThinkPHP3.0完全开发手册
union 用于数据库的union查询支持 |
|
用法 |
union($union,$all=false) |
参数 |
union(必须):union操作,支持字符串、数组和对象 all(可选):是否采用UNION ALL 操作,默认为false |
返回值 |
当前模型实例 |
备注 |
Union方法支持多次调用 |
使用示例:
$Model->field('name')->table('think_user_0')->union('SELECT name FROM think_user_1')->union('SELECT name FROM think_user_2')->select();
数组用法:
$Model->field('name')->table('think_user_0')->union(array('field'=>'name','table'=>'think_user_1'))->union(array('field'=>'name','table'=>'think_user_2'))->select();
或者
$Model->field('name')->table('think_user_0')->union(array('SELECT name FROM think_user_1','SELECT name FROM think_user_2'))->select();
支持UNION ALL 操作,例如:
$Model->field('name')->table('think_user_0')->union('SELECT name FROM think_user_1',true)->union('SELECT name FROM think_user_2',true)->select();
或者
$Model->field('name')->table('think_user_0')->union(array('SELECT name FROM think_user_1','SELECT name FROM think_user_2'),true)->select();
每个union方法相当于一个独立的SELECT语句。
注意:UNION 内部的 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每条 SELECT 语句中的列的顺序必须相同。