2009-11-13 36 views
1

可能重复:SQL “* =” 操作符

... 
where o.obj_code *= c.prv_code 


Transact-SQL shorthand join syntax?

我碰到一个T-SQL脚本,做这样的事情在where子句中跑我似乎无法在* =运算符上找到任何文档。任何人都可以解释它的使用,并可能指向它的一些文件?这是特定于T-SQL吗?

+1

Duplicate:http://stackoverflow.com/questions/557767/transact-sql-shorthand-join-syntax(其中许多其他iirc) – ChristopheD 2009-11-13 19:42:31

+0

感谢链接到重复,由于某些原因,没有出现在我的搜索。 – 2009-11-13 19:44:25

+3

其默默无闻的工作安全性的简写符号。 – Juliet 2009-11-13 19:49:26

回答

1

* =是一个古老的方式做左外连接,从甲骨文来了。我在SQL Server文档中发现了一次,因为他们强烈建议不要这样做。

下面是一些关于它的信息来自MS:

Transact-SQL Joins

+0

甲骨文并非唯一的罪犯,在这里。 – 2009-11-13 19:42:59

+2

Oracle? Sybase,是的。 Oracle是o.obj_code = c.prv_code(+) – Dave 2009-11-13 19:50:59

+0

的地方是的,但这是我从中学习的地方,所以它坚持认为我应该责怪甲骨文。 – 2009-11-13 19:51:22

0

这是旧语法左外连接,并从SQL Server 2005向上被废弃。