加入三张桌子。两个相关,一个与另外两个无关

问题描述 投票:0回答:1

我想创建一个名为ShowAllBooksBorrowed的视图,该视图显示从库中借用但未返回的所有书籍的信息(BookName,ISBN,BookCategoryName,BookAuthor,BorrowedDate,ReturnDate,ActualReturnDate)。

我无法弄清楚如何使用Books表中的信息将BorrowerInfo表与BookInfo和BookCategory表关联起来。我理解它是如何相关的,但我不知道如何实现它。我想我可能需要使用Union或CrossJoin?

这是我的数据库:

sql sql-server join view
1个回答
3
投票

您可以创建如下所示的视图:

create view show_all_books_borrowed as 
select
  k.bookname,
  b.isbn,
  c.bookcategoryname,
  k.bookauthor, 
  w.borrowdate, 
  w.returndate, 
  w.actualreturndate
from books b
join borrowerinfo w on w.bookid = b.bookid
join bookinfo k on k.isbn = b.isbn
join bookcategory c on k.bookcategoryid = c.bookcategoryid
where w.actualreturndate is null
© www.soinside.com 2019 - 2024. All rights reserved.