当我试图在我的图书馆数据库中的每个分支中搜索一个书名的副本数时,这很有效:
select BranchName, Title, sum(No_Of_Copies) as NumberOfCopies
from Library_Branch lb
join Book_Copies bc
on lb.BranchId = bc.BranchId
join BOOK b
on bc.BookId = b.BookId WHERE Title like '%The Great Gatsby%'
group by lb.BranchName, b.Title
但是当我尝试搜索两本书时,我收到了一个错误:
select BranchName, Title, sum(No_Of_Copies) as NumberOfCopies
from Library_Branch lb
join Book_Copies bc
on lb.BranchId = bc.BranchId
join BOOK b
on bc.BookId = b.BookId WHERE Title like '%The Great Gatsby%' , '%The Chronicles of Narnia'
group by lb.BranchName, b.Title
我也尝试过:
select BranchName, Title, sum(No_Of_Copies) as NumberOfCopies
from Library_Branch lb
join Book_Copies bc
on lb.BranchId = bc.BranchId
join BOOK b
on bc.BookId = b.BookId WHERE Title like '%The Great Gatsby%' or '%The Chronicles of Narnia'
group by lb.BranchName, b.Title
我知道这是一个非常初学的问题,但我对SQL很新。非常感谢任何帮助,谢谢。
答案 0 :(得分:1)
你必须在OR之后完全重写where条件:
select BranchName, Title, sum(No_Of_Copies) as NumberOfCopies
from Library_Branch lb
join Book_Copies bc
on lb.BranchId = bc.BranchId
join BOOK b
on bc.BookId = b.BookId WHERE Title like '%The Great Gatsby%' or Title like '%The Chronicles of Narnia'
group by lb.BranchName, b.Title
答案 1 :(得分:1)
你很亲密,试试这个:
SELECT BranchName, Title, sum(No_Of_Copies) as NumberOfCopies
FROM Library_Branch lb
JOIN Book_Copies bc on lb.BranchId = bc.BranchId
JOIN BOOK b on bc.BookId = b.BookId
WHERE Title LIKE '%The Great Gatsby%' or Title LIKE '%The Chronicles of Narnia'
GROUP BY lb.BranchName, b.Title