Księgarnia internetowa - podzapytania problem.

Księgarnia internetowa - podzapytania problem.
Colo X1216
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 15
0

Witam, przychodzę z takim problemem, może śmiesznym, ale na moim poziomie wiedzy, jest on dosyć trudny:
(Wszystko jest w załączniku, cała baza w tekście + pytania, które muszę zrobić)
*Oczekuję, że ktoś mi to na tyle wytłumaczy bym to zrozumiał dobrze.

Pracuję w pgadmin III (postgreSQL 9.2 (x86))

Pozdrawiam.

biela_
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: WPR
  • Postów: 136
1

dwa pierwsze ogarniesz z użyciem having
https://www.w3schools.com/sql/sql_having.asp

where znasz czy też nie?

Colo X1216
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 15
0

Czy możesz mi powiedzieć jakie tabele mam wziąć pod uwagę? bo nie wiem sam. Where wydaję mi się, że znam. Po prostu potrzebuję wiedzieć co mam wyselektować :)

biela_
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: WPR
  • Postów: 136
1

Zrób sobie diagram z tych tabel, jak Ci się nie rozjaśni to będziemy dalej podpowiadać :)

title

Colo X1216
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 15
0

Nie robiliśmy w szkole na tym programie nigdy diagramu baz, więc nie za bardzo nawet wiem jak to zrobić, powtarzam, że jestem początkujący. Po prostu dobrze by było wiedzieć jakie tabele mam wziąć pod uwagę :)

Colo X1216
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 15
0

Czy to jest odpowiedź na 1 pytanie, niech ktoś mi to rozjaśni.

Colo X1216
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 15
0

Chyba mam odpowiedź na 1, ale muszę całą kolumnę "zamowienia" zaktulizować bo wychodzi zero :)

Colo X1216
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 15
0

1 zrobiłem:
ksiegarniainternetowa=# select klient.imie, klient.nazwisko
ksiegarniainternetowa-# from klient
ksiegarniainternetowa-# inner join zamowienia
ksiegarniainternetowa-# on(klient.id_klienta=zamowienia.id_klienta)
ksiegarniainternetowa-# group by imie, nazwisko
ksiegarniainternetowa-# having count(zamowienia.id_klienta) > 1;
imie | nazwisko
---------+---------------
Natalia | Zalewska
Anna | Grojecka
Oskar | Muszynski
Filip | Borowski
Kamil | Tarka
Patryk | Waszczykowski
(6 wierszy)

2 nwm.ale chyba having sum, ale jak to nwm.

  1. to przez inner join.
biela_
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: WPR
  • Postów: 136
0
Colo X1216 napisał(a):

1 zrobiłem:
ksiegarniainternetowa=# select klient.imie, klient.nazwisko
ksiegarniainternetowa-# from klient
ksiegarniainternetowa-# inner join zamowienia
ksiegarniainternetowa-# on(klient.id_klienta=zamowienia.id_klienta)
ksiegarniainternetowa-# group by imie, nazwisko
ksiegarniainternetowa-# having count(zamowienia.id_klienta) > 1;
imie | nazwisko
---------+---------------
Natalia | Zalewska
Anna | Grojecka
Oskar | Muszynski
Filip | Borowski
Kamil | Tarka
Patryk | Waszczykowski
(6 wierszy)

2 nwm.ale chyba having sum, ale jak to nwm.

  1. to przez inner join.

dobrze kombinujesz
2 podobne jest do 1, having sum(kwota ksiazki)
3 powinienes ogarnac

Colo X1216
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 15
0

ksiegarniainternetowa=# select klient.nazwisko, klient.imie
ksiegarniainternetowa-# from klient
ksiegarniainternetowa-# inner join ksiazki
ksiegarniainternetowa-# on(klient.id_klienta=ksiazki.id_ksiazki)
ksiegarniainternetowa-# inner join zamowienia
ksiegarniainternetowa-# on(ksiazki.id_ksiazki=zamowienia.id_klienta)
ksiegarniainternetowa-# having sum (ksiazki.cena_ksiazki)>100;
BŁĄD: operator nie istnieje: money > integer
LINIA 7: having sum (ksiazki.cena_ksiazki)>100;
^
PODPOWIEDŹ: Brak operatora pasującego do podanej nazwy i typu(ów) argumentów. B
yć może należy dodać jawne rzutowanie typów.
ksiegarniainternetowa=#

Dobra wystarczyło dodać ' ' DZIEKUJĘ Bardzo za pomoc i cierpliwości do mnie pozdrawiam :)

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.