sqlite中的sql外部连接语句和子查询

pdsfdshx  于 2021-07-26  发布在  Java
关注(0)|答案(1)|浏览(247)

关闭。这个问题需要更加突出重点。它目前不接受答案。
**想改进这个问题吗?**通过编辑这篇文章更新这个问题,使它只关注一个问题。

11个月前关门了。
改进这个问题
librarydb是一个数据库系统,用于跟踪有关书籍及其在虚拟图书馆中流通的信息。
librarydb数据库的架构如下所示:
借用(transactionid,personid*,borrowdate,duedate,returndate)
作者(authord,firstname,middlename,lastname)
图书副本(bookid,bookdescid*)
书(书名、标题、副标题、版本、伏地尔、卷号、语言、地点、年份、isbn、杜威、主题*)
借阅副本(transactionid*,bookid*)
个人(personid、名字、中间名、姓氏、地址、城市、邮政编码、电话号码、电子邮件地址、学生号、身份证号码)
publisher(publisherid,publisherfullname)
编写者(booksecId*,authorid*,role)
发布者(BookDescrId*,publisherid*,角色)
主题(subjectid,subjecttype)
主键带下划线。外键用星号(*)表示。
编写sql查询以显示从未借阅过的书籍的标题。
答。使用左外部联接编写查询。
b。使用子查询和不使用外部联接再次编写查询。

mnemlml8

mnemlml81#

使用以下查询

select b.title from book b
inner join book_copy bc
on (b.bookdescID = bc.bookdescID)
left outer join borrow_copy boc
on (bc.bookID = boc.bookID)
where boc.bookID is null;

select title from book where bookdescID in 
(select bookdescID from book_copy where bookID not in 
(select bookID from borrow_copy));

相关问题