考虑下面的两个表和四个SQL查询。
查询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)是正确的。
请参阅:联接(内部联接,左侧联接,右侧联接和完全联接),内部联接与外部联接
这个问题的测验