其中{table1.field} * = {table2.field}语法

时间:2013-04-16 09:35:24

标签: sql sybase

我刚刚收到了几周前由某人写的SQL语句(似乎没有人知道是谁)。

作为声明的一部分,在WHERE子句中,它们具有以下内容:{table1.field} *= {table2.samefield}

这到底发生了什么?我假设某种联接,但是什么加入和为什么,以及一般来说,为什么有人会把它放在WHERE条款中?

2 个答案:

答案 0 :(得分:1)

这似乎是Sybase的外连接注释:

  

在结果中包含第一个表中的所有行,而不仅仅是连接列匹配的行。

请参阅: Sybase docs

答案 1 :(得分:0)

SyBase连接运算符等同于更传统的LEFT OUTER JOIN(或更常见的是LEFT JOIN

参考:SyBooks Online - The WHERE clause

  

* =

     

在结果中包含第一个表中的所有行,而不仅仅是   连接列匹配的那些。

=* RIGHT OUTER JOIN(或更常见的RIGHT JOIN)相对。