Pomoc z rozwiązaniem kilku zadań z SQL

0

Witam mam problem z 4 zapytaniami SQL
W programie SQL Developer uruchomić skrypt bdemobld_pl.sql.

  1. Poleceniem SQL wprowadź do tabeli „Pracownicy” nowy wpis podając swoje imię i nazwisko
    oraz dzisiejszą datę jako datę zatrudnienia, pozostałe dane wg własnego uznania.
  2. Napisz polecenie SQL zwracające zamówienia mające tylko jedną pozycję.
  3. Wyświetlić łączne kwoty zamówień dla każdej z siedzib.
  4. Zwiększyć o 2% prowizję sprzedawców, którzy mają przynajmniej jednego podwładnego.

Byłbym wdzięczny za jakiekolwiek podpowiedzi, opis bazy przesyłam w załącznikach.

0

4.update Pracownicy set Pensja = Prowizja * 1.02 where id_szefa is not null ; ale nie działa poprawnie

  1. insert into pracownicy values(5433, 'imie', 'Nazwisko', 'D', 670, 7506, '2018-09-13', 3000, 700, 10);

2 i 3 na razie nie mam pomysłu

0
  1. Prawie dobrze. Dzisiejsza data nie znaczy '201809-13' (i nie dlatego, że dziś 15-ty). Pewnie current_date. Dobrym zwyczajem jest też podawanie przy insert kolumn, które wstawiasz. Masz wtedy większą elastyczność - niektóre możesz pominąć, lub dać w innej koejności.
  2. Musisz użyć GROUP BY i HAVING
  3. tu zwykłe gruopwanie
  4. To prawie tak samo jak 2.
0

Czy mógłby mi Pan to napisać, mam problemy z tym sql a chciałbym się go nauczyć. Byłbym niezwykle wdzięczny.
Wymyśliłem coś takiego ale nadal coś nie tak...
Select z.wartosc, s.region from zamowienia z, siedziby s join wartosc z ON s.region=z.region group by s.region having count(z.region) >0

1
  1. Na szybko, bo się spieszę...
    SELECT z.ID_ZAMOWIENIA FROM ZAMOWIENIA z JOIN WIERSZE_ZAMOWIEN w ON w.ID_ZAMOWIENIA=z.ID_ZAMOWIENIA GROUP BY z.ID_ZAMOWIENIA HAVING Count(w.ID_WIERSZA_ZAM)=1
    lub
    SEECT * FROM ZAMOWIENIA z WHERE (SELECT Count(*) FROM WIERSZE_ZAM w WHERE w.ID_ZAMOWIENIA=z.ID_ZAMOWIENIA)=1
0

Rewelacja, dziękuje ślicznie, będę próbował robić 3.

1 użytkowników online, w tym zalogowanych: 0, gości: 1