union-j9九游

union操作用于合并两个或多个 select 语句的结果集。

使用示例:

db::field('name')
      ->table('think_user_0')
      ->union('select name from think_user_1')
      ->union('select name from think_user_2')
      ->select();

闭包用法:

db::field('name')
      ->table('think_user_0')
      ->union(function($query){
      	$query->field('name')->table('think_user_1');
        })
      ->union(function($query){
      	$query->field('name')->table('think_user_2');
        })
      ->select();

或者

db::field('name')
      ->table('think_user_0')
      ->union(['select name from think_user_1','select name from think_user_2'])
      ->select();

支持union all 操作,例如:

db::field('name')
      ->table('think_user_0')
      ->union('select name from think_user_1',true)
      ->union('select name from think_user_2',true)
      ->select();

或者

db::field('name')
      ->table('think_user_0')
      ->union(['select name from think_user_1','select name from think_user_2'],true)
      ->select();

每个union方法相当于一个独立的select语句。

注意:union 内部的 select 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每条 select 语句中的列的顺序必须相同。

文档最后更新时间:2018-04-26 09:40:27
网站地图