Pomoc w zapytaniu sumującym

Pomoc w zapytaniu sumującym
L9
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Frydek
  • Postów: 18
0

Witam serdecznie

Mam problem z napisaniem zapytania sumującego dane:
Mam w przybliżeniu następującą strukturę (dane przykładowe):

Tabela - Zakupy
Data (date)
Nazwisko (char)
Koszt (decimal)

Mamy wiele wpisów każdej osoby jednego dnia, gdzie każda jest osobnym rekordem w bazie, np:
Nazwisko Data Koszt
Kowalski 2015-05-25 20
Kowalski 2015-05-25 30
Kowalski 2015-05-24 10
Kowalski 2015-05-24 50
Nowak 2015-05-25 120
Nowak 2015-05-25 130

Chciałbym otrzymać sumowanie, ile każdego dnia wydała każda osoba czyli:
Kowalski 2015-05-25 50
Kowalski 2015-05-24 60
Nowak 2015-05-25 250

Czy ktoś może mi pomóc w napisaniu zapytania

PD
  • Rejestracja: dni
  • Ostatnio: dni
1
Kopiuj
 select nazwisko, data, sum(koszt) koszt from zakupy group by nazwisko, data
L9
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Frydek
  • Postów: 18
0

Niestety takie zapytanie wyświetla w dalszym ciągu każdy wiersz osobno.

PD
  • Rejestracja: dni
  • Ostatnio: dni
  • Rejestracja: dni
  • Ostatnio: dni
0

Strona nie bardzo chce się załadować.

L9
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Frydek
  • Postów: 18
0

Dzięki za pomoc, będę szukał problemu gdzie indziej niż w zapytaniu, ponieważ na żywej bazie nie chce mi tego tak ładnie pokazywać, jeszcze nie wiem dlaczego.

L9
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Frydek
  • Postów: 18
0

Tak, mam inne dane bo pracuje na bazie produkcyjnej i nie mogę jej tutaj zacytować, ale struktura jest taka sama.

ŚM
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 44
1

prawdopodobnie Twoja data to data z godziną- jeżeli po niej pogrupujesz to pogrupują się tylko rekordy o tej samej sekundzie - musisz grupować po samej dacie - spróbuj castować pole na datę dopisując ::date

simmy
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 5
1

Może coś takiego?

Kopiuj
SELECT nazwisko, TO_CHAR(data, 'YYYY/MM/DD'), SUM(koszt)
FROM zakupy
GROUP BY nazwisko, TO_CHAR(data, 'YYYY/MM/DD')
L9
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Frydek
  • Postów: 18
0

Dokładnie jak dwie powyższe odpowiedzi, Pole Data wyświetlałem jak Data::date, ale podczas grupowania nie rzutowałem na ::date i nie chciało sumować kilku kwot z tego samego dnia.
Dzięki wielkie za pomoc.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.