union

最后更新于:2022-04-01 21:21:08

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 语句中的列的顺序必须相同。
';