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

    使用示例:

    1. <?php
    2. Db::field('name')
    3. ->table('think_user_0')
    4. ->union('SELECT name FROM think_user_1')
    5. ->union('SELECT name FROM think_user_2')
    6. ->select();

    闭包用法:

    1. <?php
    2. Db::field('name')
    3. ->table('think_user_0')
    4. ->union(function ($query) {
    5. $query->field('name')->table('think_user_1');
    6. })
    7. ->union(function ($query) {
    8. $query->field('name')->table('think_user_2');
    9. })
    10. ->select();

    或者

    1. <?php
    2. Db::field('name')
    3. ->table('think_user_0')
    4. ->union([
    5. 'SELECT name FROM think_user_1',
    6. 'SELECT name FROM think_user_2',
    7. ])
    8. ->select();

    支持UNION ALL 操作,例如:

    1. <?php
    2. Db::field('name')
    3. ->table('think_user_0')
    4. ->unionAll('SELECT name FROM think_user_1')
    5. ->unionAll('SELECT name FROM think_user_2')
    6. ->select();

    或者

    1. <?php
    2. Db::field('name')
    3. ->table('think_user_0')
    4. ->union(['SELECT name FROM think_user_1', 'SELECT name FROM think_user_2'], true)
    5. ->select();

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

    UNION 内部的 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每条 SELECT 语句中的列的顺序必须相同。