鑑於這種簡單的模式:當您加入「或」或SQL時會發生什麼?
create table A(pk int primary key, R1 int, R2 int);
create table B(pk int primary key);
如果我做下面的查詢和使用OR,如下圖所示加入到底會發生什麼?
select *
from A
join B
on A.R1 = B.pk or A.R2 = B.pk
我感興趣的是下面的情況:
如果一個行存在,其中R1和R2指向不同的PK B中?作爲連接的結果,最終是否有多條記錄?或者它只是默認在or的左側,並且與A.R1 = B.pk匹配?
PS:我在平板電腦上閱讀代碼,並沒有一個數據庫,以測試它,所以請不要告訴我運行它自己:)我試着用搜索引擎,但沒有找到確切的情況。
您將以A的重複記錄結尾。 – 2013-03-23 18:18:28