我正在維護一些在查詢中使用* =操作符的代碼,但我找不到關於它的文檔。有人知道* =做什麼嗎?我認爲這是某種聯接。* =在Sybase SQL中
select * from a, b where a.id *= b.id
我不能找出如何,這是從不同:
select * from a, b where a.id = b.id
我正在維護一些在查詢中使用* =操作符的代碼,但我找不到關於它的文檔。有人知道* =做什麼嗎?我認爲這是某種聯接。* =在Sybase SQL中
select * from a, b where a.id *= b.id
我不能找出如何,這是從不同:
select * from a, b where a.id = b.id
內和外表
術語外部表和內部表中描述的外表的位置加入:
在左連接中,外部表格和內部表格分別是左側表格和右側表格。外部表和內部表也分別稱爲行保留和空值表。
在右連接中,外部表和內部表分別是右側和左側表。
例如,在下面的查詢,T1是外部表,T2是內部表:
或者,使用Transact-SQL語法:
哇,謝謝sybase使這個聲音變得混亂和混亂。 – 2010-04-17 08:35:13
它看起來是你提供的關於不同事物的鏈接。 – Trismegistos 2013-04-18 09:15:43
這意味着外連接,一個簡單=表示內連接。
*= is LEFT JOIN and =* is RIGHT JOIN.
(或反之,我一直忘了,因爲我不使用它了,而對於* =搜索時,谷歌是沒有幫助)
這個答案是對的。 – 2010-04-16 10:02:34
當然,你應該寫是這樣:
SELECT *
FROM a
LEFT JOIN b ON b.id=a.id
的A,B的語法是邪惡的。
我不知道邪惡,但它肯定是Sybase和Microsoft SQL Server專有的,並且不受其他品牌的數據庫支持。 – 2008-10-23 19:29:46
select * from a, b where a.id = b.id
要求連續在b.id = a.id存在爲了返回答案
select * from a, b where a.id *= b.id
會從B與空值的欄時,有沒有在一排b where b.id = a.id.
ANSI-82語法
select
*
from
a
, b
where
a.id *= b.id
ANSI-92
select
*
from
a
left outer join b
on a.id = b.id
請保持小心。它現在已被棄用,並且需要對數據庫配置進行明確的激活。 – frlan 2015-01-10 18:25:38