相关疑难解决方法(0)

内连接和外连接; 表格的顺序是重要的吗?

为什么在组合外部和内部连接时表的顺序很重要?postgres失败如下:

SELECT grp.number AS number,     
       tags.value AS tag   
FROM groups grp,
     insrel archiverel  
LEFT OUTER JOIN ownrel ownrel ON grp.number = ownrel.dnumber   
LEFT OUTER JOIN tags tags ON tags.number = ownrel.snumber   
WHERE archiverel.snumber = 11128188 AND    
      archiverel.dnumber = grp.number 
Run Code Online (Sandbox Code Playgroud)

结果:

ERROR:  invalid reference to FROM-clause entry for table "grp" LINE 5: LEFT OUTER JOIN ownrel ownrel ON grp.number = ownrel.d... 
^ HINT:  There is an entry for table "grp", but it cannot be referenced from this part of the query. …
Run Code Online (Sandbox Code Playgroud)

postgresql

16
推荐指数
3
解决办法
3万
查看次数

左连接和内连接组

说,我有以下查询:

SELECT * FROM TABLE1 
    JOIN TABLE2 ON ...
    LEFT JOIN TABLE3 ON ...
        JOIN TABLE3_1 ON ...
        JOIN TABLE3_2 ON ...
        JOIN TABLE3_3 ON ...
Run Code Online (Sandbox Code Playgroud)

我想要实现的是TABLE3,TABLE3_1,TABLE3_2,TABLE3_3内部连接(我只需要它们之间的所有匹配数据,其余的都没有).然后对于TABLE1,TABLE2也有内部连接.但是从TABLE1 + TABLE2结果来看,有些将没有相应的TABLE3条目,这没关系,我仍然会想要它.

如果按原样运行上面的伪代码,显然它不会达到相同的结果.

sql oracle join inner-join left-join

6
推荐指数
2
解决办法
6229
查看次数

标签 统计

inner-join ×1

join ×1

left-join ×1

oracle ×1

postgresql ×1

sql ×1