Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 内连接前的并集_Sql_Union_Inner Join - Fatal编程技术网

Sql 内连接前的并集

Sql 内连接前的并集,sql,union,inner-join,Sql,Union,Inner Join,为什么我在内部联接之前使用并集呢 select some_table1.some_column1, some_table1.some_column2 FROM some_table1 UNION ALL select some_table2.some_column1, some_table2.some_column2 FROM some_table2 INNER JOIN some_table3

为什么我在内部联接之前使用并集呢

    select some_table1.some_column1,
           some_table1.some_column2
    FROM some_table1
    UNION ALL
    select some_table2.some_column1,
           some_table2.some_column2
    FROM some_table2
    INNER JOIN  some_table3
    ON  some_table3.some_column1 = some_table1.some_column1 
我有一个eror:无法绑定多部分标识“some_table 3.some_column1”?
所有数据类型都是兼容的。

当查询的后半部分中不存在
some\u table1
时,您试图将
some\u table1
加入到
some\u table3
中,而查询的后半部分中只存在前半部分。

您将收到一个错误,因为这不是有效的SQL语法<代码>联合所有语法为:

SELECT <column1>
FROM <table1>
UNION ALL
SELECT <column1>
FROM <table2>

我猜你会喜欢这样的东西吧

SELECT
(
       select some_table1.some_column1,
               some_table2.some_column2
        FROM some_table1
        UNION ALL
        select some_table2.some_column1,
               some_table2.some_column2
        FROM some_table2
) sub
        INNER JOIN  some_table3
        ON  some_table3.some_column1 = sub.some_column1 

是的,它看起来像我想要的。据我所知,我必须在使用内部联接之前对结果进行分组?
SELECT
(
       select some_table1.some_column1,
               some_table2.some_column2
        FROM some_table1
        UNION ALL
        select some_table2.some_column1,
               some_table2.some_column2
        FROM some_table2
) sub
        INNER JOIN  some_table3
        ON  some_table3.some_column1 = sub.some_column1