【发布时间】:2020-05-03 03:38:01
【问题描述】:
我的任务是创建一个陈述来回答这个问题:
列出每位作者(按姓氏和名字)以及作者撰写的书籍数量。
数据库有三个将要使用的表
带有 isbn(主要)、标题、类型、pub_id、价格、预付款、ytd_sales、pub_date 的书表
bookauthor 表(介于书籍和作者之间),author_id(primary),isbn,author_order,royalshare
author_id(primary)、ssn、姓氏、名字、电话、地址、城市、州、邮编的作者表
select author.lastname, author.firstname, bookauthor.count(author_id)
from author a
join bookauthor ba on ba.author_id = a.author_id
group by lastname
这就是我得到的,但它不起作用,无论出于何种原因,我都很难理解这些带有 join 和 in 的 SQL 语句以及这些类型的语句。如果有人能帮助更多地解释这个过程,那将不胜感激。
【问题讨论】:
-
MySQL 还是 SQL Server?
-
两位作者同名并不代表他们是同一个人。这就是为什么你有一个 author_id!
-
@Strawberry 好点。我已经更新了我的答案以考虑到这一点。
标签: mysql sql sql-server