2012-11-14 55 views
7

我正沿着打字和胖手指的东西,当我在SQL窗口中键入= *运算符在SQL

=* 

(2008 SSMS连接到2005服务器)它变成了蓝色作为关键字。

我找不出来,或谷歌,这是做什么。我知道* =但不是= *

这个操作符做什么?

+0

在什么键盘时,你胖手指“=”和“*”? –

+0

被假设为=(如在启动一个子查询集合语句=(选择 – Mike

+0

可能重复的[SQL Server \ * = Operator?](http://stackoverflow.com/questions/983862/sql-server-operator ) – rogerdeuce

回答

18

=*是编写右外连接的旧方法。例如:

select * 
from A 
right outer join 
     B 
on  A.bid = B.id 

上写的是旧风格,如:

select * 
from A 
,  B 
where A.bid =* B.id 
+0

标记为已解决:) – DWolf

+0

Wow。Would = *是左连接还是右连接?当我试图编写我得到的语句时也很有趣---- 查询使用非ANSI外连接运算符(“\” * =“或”= \ *“)要使用存储过程sp_dbcmptlevel将当前数据库的兼容级别设置为80或更低,强烈建议使用ANSI外连接运算符重写查询在未来的SQL Server版本中,即使在向后兼容模式下,也不支持非ANSI连接运算符。 – Mike

+0

'* ='是左外连接,'= *'是正确的外加入你可以在Sybase文档中找到旧的语法:http://manuals.sybase.com/onlinebooks/group-as/asg1250e/sqlug/@ebt-link;pt=11971?target=%25N%15_13070_START_RESTART_N%25。 SQL Server和Sybase作为同一产品开始 – Andomar