2016-10-25 4 views
0

에서 나는 다음과 같은 흐름도에서 데이터베이스를 생성 : https://www.learncodinganywhere.com/learningmanagementsystem/links/07_DB/SQL_Drill.pdf그룹이 BY는 SQL

나는 특정 책 제목의 얼마나 많은 복사본을 찾기 위해 노력하고있는 경우 각 Library_Branch.BranchName에, 어떤 방법을 내가 어떻게 사용할 것 그? 나는이 작업을 수행 할 수있는 모든 지점의 모든 사본의 수를 얻을 원한다면 나는 알고있다 :

SELECT sum(No_Of_Copies) as 'Total Copies' 
FROM BOOK_COPIES 
WHERE BookId in (select BookId 
       from book where title like '%The Great Gatsby%') 

을하지만 내가 각 지점 및 인쇄 매수를 구별 할 방법을 알아 내려고 노력하는 데 문제가 있어요. 가능하다면 직접 대답을하지 마십시오!

내 자신의 것으로, 내 혀 끝 부분에서 이것을 알아 내려고 시도하면 약간의 안내가 필요합니다. 편집 : 점점 가까워지고 있습니까? 마치 내가 거의 다 왔다고 느낀다.

 SELECT sum(No_Of_Copies) as 'Total Copies' FROM BOOK_COPIES 
     WHERE BookId in 
     (
     select BookId 
     from book where title like 
     '%The Great Gatsby%' 
     ) Group By BranchName in 
     (
     SELECT BranchName 
     from LIBRARY_BRANCH 
     ) 
+1

제목은 나를 위해 작동, 내가 SQL 서버를 사용하고 –

+0

일이 각 지점 그룹화 그래서 대답은'Select'을 GROUP BY''에서'branch' 정보를 추가하고있다 내 끝. 그리고 ok 나는 그것에서 가려고 노력할 것이다! –

답변

0
select lb.BranchName, b.Title, sum(bc.no_of_copies) 
    from Library_Branch lb 
    join Book_Copies bc 
    on lb.BranchId = bc.BranchId 
    join Books b 
    on bc.BookId = b.BookId 
    group by lb.BranchName, b.Title 
0
SELECT Branch, title, sum(No_Of_Copies) as 'Total Copies' 
FROM BOOK_COPIES 
INNER JOIN BOOK 
ON Book_Copies.BOOkID = Book.BOOKID 
LEFT OUTER JOIN Branch 
ON Branch.BranchID = BOOK_Copies.BranchID 
WHERE Book.title like '%The Great Gatsby%' 
GROUP BY Branch, Title 
관련 문제