[SQL] Ekstrakcja daty z TIMESTAMP'a

0

Mam przykładową kwerendę o budowie:

SELECT ID_FAKTURY, (CURRENT_TIMESTAMP) "DATA_WYSTAWIENIA";

Jednakże TIMESTAMP zwraca datę i godzinę, a ja potrzebuje wyłącznie:

  1. daty RRRR-MM-DD
  2. samego roku RRRR

Wiem, że jest coś takiego niestety nie pamiętam już jak to robiło. Przypomnicie koledzy?

0

select
cast('today' as date)

where
cast(mytimestamp as date) = current_date;

0

a jesli mam tabele w której znajduje sie data w formacie RRRR-MM-DD to jak zrobić selecta tak by pokazywał mi jedynie rok z tego pola?

0

Zaglądałeś w ogóle do linka, który podałem?

0

Jasne, że zaglądałem, po prostu nie znalazłem tam przykładu, który by odpowiadał mojej sytuacji.

ze strony: SELECT DATE_FORMAT('2006-06-00', '%d');

To nie to czego szukam. Tak jak pisałem wyżej, muszę pobrał date z pola i przeformatowac.

0
JacekKw napisał(a)

a jesli mam tabele w której znajduje sie data w formacie RRRR-MM-DD to jak zrobić selecta tak by pokazywał mi jedynie rok z tego pola?

Jest druga funkcja SQL "extract"

0

W dokumentacji jest opisano zarówno funkcja EXTRACT, DATE_FORMAT jak i YEAR za pomocą, których można to zrobić... :/

0

I po lekturze niestety wciąż nie wiem jak to zrobić. Nie potrafię przerobić tych przykładów na mój przypadek. Panowie, potrzebuje tego pilnie do pracy dyplomowej, nie moge sobie pozwolić na zabawe z Wami w mądrego i niemądrego usera wyszukiwarki. Będę wdzięczny za gotowe rozwiązanie.
Pozdrawiam

0

Witki opadają jak sie czyta takie posty. Napisz jeszcze że ta praca dyplomowa to z informatyki.
Jak rozumiem chodzi ci o:

select year(pole_z_data)
from tabela_z_owym_polem

?

0

Tak, to dyplomówka z informatyki (chociaż nie na informatycznym kierunku, troche to zakręcone). Aplikacja bazodanowa w Delphi. Ale to jak pisałem z tym masłem. SQL'a uczę się na hmm... precedensach. Bardzo często nie mogę korzystać z dokumentacji, bo korzystam z Interbase'a a nie MySQLa a ten pierwszy nie ma wielu rzeczy.

Np SELECT YEAR(DATA_WYSTAWIENIA) FROM FAKTURY wyrzuca błąd na wyrazie YEAR. Czyżby znowu nie znał funkcji?

A o moją przyszłość się nie martwcie. I bardzo bym prosił nie budowania mi wizerunku gamonia, który odwala dyplomówkę, bo za dużo pracy i serca w nią włożyłem, i wszelkie uwagi typu powyżej odbiorę bardzo osobiście.

0

Rozumiem ze uznałeś ze nie warto napisać o jaką bazę własciwie chodzi? Wszyscy tutaj <ort>na prawdę</ort> chcą ci pomóc, ale ty sam nie chcesz sobie pomóc...
Na podstawie tego (bo nigdy w życiu interbase nie widziałem nawet na oczy...)
http://www.volny.cz/iprenosil/interbase/ip_ib_code_timestamp.htm
przypuszczam ze będzie to wyglądało tak:

EXTRACT(YEAR FROM Data)
0

Przeważnie jak pisze, że pracuje w interbase to niewiele osób jest w stanie mi pomóc, toteż liczę, że zaproponowane rozwiązania z MySql dadzą się zaimplementować, lub podrzucą mi jakiś pomysł, a tak się zdarzało.

A to ostateczna wersja tej kwerendy:

SELECT DATA_WYSTAWIENIA, EXTRACT (YEAR FROM DATA_WYSTAWIENIA) "ROK" FROM FAKTURY;

Dziękuje Shalom.

0

Przepraszam, a jak mam zareagować gdy dowiaduje się, że osoba, która wkrótce zamierza bronić pracy dyplomowej nie zna tak elementarnych podstaw języka na temat, którego pisze pracę i nie potrafi przeczytać ze zrozumieniem dokumentacji? Wybacz mi ale ja naprawdę nie potrafię w takiej sytuacji zareagować inaczej...

0
JacekKw napisał(a)

Przeważnie jak pisze, że pracuje w interbase to niewiele osób jest w stanie mi pomóc, (..).

Interbase nie jest taki zły. Sam z niego korzystam i do tej pory nie potrzebowałem zmieniać na inną bazę.

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