zapytania o daty

0

Pracownicy(id, imie, nazwisko, id_dzialu, pensja, projekt)
Projekty(p_id, szef_projektu, nazwa, termin_oddania)

  1. Wyświetl ile czasu minęło lub pozostało do terminu oddania od dnia dzisiejszego dla każdego projektu, którego termin upłynął przed "01-01-2008"
  2. Wyświetl nazwę dnia tygodnia w którym nastąpi zakończenie (termin_oddania) projektu o p_id równym "p1".
  3. Z tabeli Projekty wyświetl kolumnę szef_projektu dla projektów, które kończą się pomiędzy 2009-08-15 a 2010-03-30.

Zadania 1 nie mam pojęcia jak zrobić, zadanie 2 i 3 probowalem zrobić ale wywala mi błędy.. prosiłbym o pomoc

SELECT p_id,DAYNAME(termin_oddania) as dzien_tygodnia from projekty where p_id="p1"
select szef_projektu from projekty where (termin_oddania '2009-08-15' AND '2010-03-30')
1
  1. DATEDIFF
  2. DATENAME(dw, termin_oddania)
  3. BETWEEN
0

Dziękuję za odpowiedz podpunkt 3 udało mi się zrobić natomiast podpunkt 2 wciąż wywala mi błąd, że kolumna "dw" nie istnieje

0

mam napisane "kolumna"

0

tylko w sql w srodowisku PostgreSQL

1
  1. SQL to nie postgresql!
  2. datename jest w mssql
  3. zobacz coś z tego https://www.postgresql.org/docs/9.5/functions-formatting.html
0

został mi jeszcze podpunkt 1, prosiłbym o pomoc napisałem cos takiego ale to poprawnie nie jest

  SELECT DATE_PART('year', termin_oddania::date) - DATE_PART('year', '01-01-2008'::date) from projekty
1

Skoro to postgreSQL, to w 1 użyj AGE, a w 3 TO_CHAR. Oba są w dokumentacji.

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