union(鍊式操作12)
union使用範例:
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') ->unionAll('SELECT name FROM think_user_1') ->unionAll('SELECT name FROM think_user_2') ->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 語句中的列的順序必須相同。