Witam serdecznie,
Drugi dzien nad tym siedze i nie jestem w stanie nic ruszyc dalej. W zalozeniu musze zliczyc, ktory uzytkownik wypozyczyl najwiecej ksiazek, wypisac je wszystkie po ID oraz zliczyc Punkty jakie uzyskal za oddanie ich na czas. Walcze i kombinuje zarowno z GROUP BY, COUNT i sortowaniem, ale zdecydowanie cos mi umyka.
Wszystkie wypozyczenia to tzw tranzakcje czyli maja swoje Transactions_ID, przypisane jest do nich to, ktory uzytkownik (Members_ID) wypozyczyl ktora ksiazke (Book_ID).
Jestem w stanie zliczyc kto wypozyczal najczesciej dzieki ponizszej komendzie, ale pokazuje mi to liste wszystkich wraz ze zliczeniem ile razy wypozyczali:
SELECT Transactions.Member_ID, COUNT(Transactions.Member_ID) as total_borrowed, Books.BookName, SUM(Transactions.Appreciation_Points) as total_points
FROM Transactions
INNER JOIN Books ON Transactions.Book_ID = Books.Book_ID
GROUP by Transactions.Member_ID
ORDER by total_borrowed DESC
Ilosc czasu jaki spedzilem nad roznymi kombinacjami jest nie do opisania ;(
Potrafie dojsc do tego "Na okolo", ale nie za pomoca jednego zapytania.
Dwoch uzytkownikow z najwieksza iloscia wypozyczen i to ile lacznie maja punktow.
I to jakie ksiazki wypozyczyli:
Czy znalazlby sie tutaj ktokolwiek kto bylby w stanie mnie naprowadzic i pomoc w jaki sposob takowe zapytanie powinno wygladac i jak powinno byc skonstruowane?
Ponizej zamieszczam tylko wycinek z calej bazy danych, gdyz tylko na niej sie opiera to zapytanie.
Reasumujac jako ze potrafie sie bezsensownie ropisac: Potrzebuje znalezc kto wypozyczal najwiecej ksiazek, jakie to ksiazki byly (samo ID wystarczy) oraz ile punktow calkowicie zdobyl.