![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 17 Pomógł: 0 Dołączył: 21.03.2015 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
To mój pierwszy post więc proszę o wyrozumiałość. Próbuje pobrać dane z kilku tabel ale natrafiłem na problem z którym nie mogę sobie poradzić. Na początku może przedstawię sktrukturę tabel. Podaje tylko nazwy pól, które wykorzytuje w zapytaniu. Tabela: ShipmentsBooks Pola: Id, ShipmentId, BookId, PurchasePrice, Quantity Tabela: Books Pola: Id, ISBN, Title Tabela: AuthorsBooks Pola: Id, AuthorId, BookId Tabela: Authors Pola: Id, FirstName, LastName Próbuje utworzyć tabelę, która będzie zawierała następujące dane pogrupowane wg Id książki: BookId , ISBN, Title, Authors, średnia z PurchasePrice i suma z Quantity W momencie gdy zastosuje zapytanie:
wszystkie dane pobiera dobrze poza ostatnią częścią "SUM(Quantity) AS SummaryQuantity". W momencie gdy dana książka ma dwóch autorów - mnoży wynik razy 2, gdy 3 - mnoży razy 3 itd. Narazie jedynym rozwiązaniem, które sprawiło że problem ustąpił było usunięciem kolumny odpowiedzialnej za autorów... Ale przecież nie oto chodzi. Proszę o pomoc. Ten post edytował Thompsoon 21.03.2015, 18:41:26 |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 800 Pomógł: 1827 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
-------------------- |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 17 Pomógł: 0 Dołączył: 21.03.2015 Ostrzeżenie: (0%) ![]() ![]() |
Hmm na pierwszy rzut oka powinno działać.
Jednak nie wiem dlaczego ale tak nie jest. Z ciekawości dodałem sobie dodatkowa kolumnę:
Dla pozycji gdzie mam 3 autorów = 30 2 autorów = 6 1 = 3 a z kolei dla innej książki z jednym autorem 1 = 4 Ok, mam rozwiązanie
Teraz pokazuje prawidłowo ![]() Ten post edytował Thompsoon 21.03.2015, 19:29:13 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 6 800 Pomógł: 1827 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
Dodaj grupowanie po id autora zamiast distinct.
-------------------- |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 17 Pomógł: 0 Dołączył: 21.03.2015 Ostrzeżenie: (0%) ![]() ![]() |
W którym miejscu? W momencie gdy dodałem na końcu kodu to rozdzielił mi wszystkie pozycje względem Id Książki i i Id Autora.
Tutaj należy jakieś podzapytanie dodać? |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 6 800 Pomógł: 1827 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
A, tak masz rację. Dobrze rozwiązałeś problem.
-------------------- |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 17 Pomógł: 0 Dołączył: 21.03.2015 Ostrzeżenie: (0%) ![]() ![]() |
W każdym razie, bardzo dziękuję za pomoc. Bez tego bym nie ruszył dalej:)
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 23.06.2025 - 05:18 |