📜  门| GATE CS 2018 |简体中文问题29

📅  最后修改于: 2021-07-02 16:02:02             🧑  作者: Mango

考虑下面的两个表和四个SQL查询。

书籍( isbn ,bname),库存( isbn ,副本)

查询1:

SELECT B.isbn, S.copies
FROM Book B INNER JOIN Stock S
ON B.isbn = S.isbn;

查询2:

SELECT B.isbn, S.copies
FROM B B LEFT OUTER JOIN Stock S
ON B.isbn = S.isbn;

查询3:

SELECT B.isbn, S.copies
FROM Book B RIGHT OUTER JOIN Stock S
ON B.isbn = S.isbn;

查询4:

SELECT B.isbn, S.copies
FROM B B FULL OUTER JOIN Stock S
ON B.isbn = S.isbn;

上面哪一个查询肯定具有与其他三个查询的输出超集的输出?
(A)查询1
(B)查询2
(C)查询3
(D)查询4答案: (D)
说明:在SQL中, FULL OUTER JOIN合并左右外部联接的结果,并返回join子句两侧的表中的所有(匹配或不匹配)行。

因此,选项(D)是正确的。

请参阅:联接(内部联接,左侧联接,右侧联接和完全联接),内部联接与外部联接
这个问题的测验