ďťż
 
[PostgreSQL] funkcja Year z MySQL'a ďťż
 
[PostgreSQL] funkcja Year z MySQL'a
Zobacz wiadomości
 
Cytat
A gdyby tak się wedrzeć na umysłów górę, / Gdyby stanąć na ludzkich myśli piramidzie, / I przebić czołem przesądów chmurę, / I być najwyższą myślą wcieloną. . . Juliusz Słowacki, Kordian
Indeks BCB i MySQL subiekt gt fototapeta
 
  Witamy

[PostgreSQL] funkcja Year z MySQL'a



Kamil Zeno - 25-01-2007 00:01
[PostgreSQL] funkcja Year z MySQL'a
  Witam

Otrzymałem polecenie przerobienia programu, który działał
do tej pory z MySQL'em, a teraz ma działać z PostgreSQL'em.
W kodzie jest dużo (bardzo dużo) zapytań sql'owych, w których
występują funkcje wyciągające rok i miesiąc z pola typu date:
...... where year(data)=:0......
Wiem, że wystarczy przerobić słowo
year
na
date_part('year',
i sprawa jest załatwiona. Zwykłe replace mnie tutaj nie urządza, gdyż
w samym kodzie istnieją zmienne (i inne rzecz) o nazwie year i nieźle
namieszałbym w kodzie.Ogólnie rzemiosło.
Chciałbym się zapytać Państwa jak stworzyć funkcję w postgresie
o nazwie year, która wyciągałaby z daty podanej jako parametr
rok. Nie wiem jak się do tego zabrać. Utknąłem na samym początku,
gdy się okazało, że typ parametru musi być taki sam jak typ zwracanego
wyniku (a tutaj parametr jest datą, a wynik zawracany jest integerem).

Kamil.





Michal Jankowski - 25-01-2007 00:01

  "Kamil Zeno" <niepodajetutajmaila@nic.pl> writes:

> ..... where year(data)=:0......
> Wiem, że wystarczy przerobić słowo
> year
> na
> date_part('year',
> i sprawa jest załatwiona. Zwykłe replace mnie tutaj nie urządza, gdyż
> w samym kodzie istnieją zmienne (i inne rzecz) o nazwie year i nieźle

I te inne zmienne występują w pozycji bezpośrednio przed nawiasem
otwierającym? No powiedzmy....

> Chciałbym się zapytać Państwa jak stworzyć funkcję w postgresie
> o nazwie year, która wyciągałaby z daty podanej jako parametr
> rok. Nie wiem jak się do tego zabrać. Utknąłem na samym początku,
> gdy się okazało, że typ parametru musi być taki sam jak typ zwracanego

Ktoś cię oszukał 8-).

> wyniku (a tutaj parametr jest datą, a wynik zawracany jest integerem).

Zawracana to jest Wisła 8-).

A funkcja może wyglądać jakoś tak:

create function year(date) returns integer as $$
select date_part('year',$1)::integer;
$$ language sql;

MJ




Kamil Zeno - 25-01-2007 00:01

  Użytkownik "Michal Jankowski" <michalj@fuw.edu.pl> napisał w wiadomości
news:2n7ivca5sg.fsf@ccfs1.fuw.edu.pl...
[...]

Dziękuję :) Proste jak świat :) Pięknie działa. A oszukali mnie pgadmin
i sprawdzanie pisowni w OE :)

Kamil.

Albo PostgreSQL, albo nic.
Albo pytać na pl.comp.bazy-danych, albo nigdzie.
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • effulla.pev.pl
  • comp
    [mysql] =?ISO-8859-2?Q?Za=E6mienie=2E=2E=2E_jak_wy=B6wietli=E6?==?ISO-8859-2?Q?=2E=2E=2E?= [mysql] =?ISO-8859-2?Q?wielko=B6=E6_bazy_a_stabilno=B6=E6=2C?==?ISO-8859-2?Q?_podzia=B3_du=BFej_bazy_a_powi=B1zania_tabel?= [MySQL] =?ISO-8859-2?Q?Wy=B6wietlenie_kolejnej_pozycji=2C_?==?ISO-8859-2?Q?jak=B1_mia=B3by_dany_rekord=2C_gdybym_czyta=B3 _?==?ISO-8859-2?Q?wg_konkretnych_kryteri=F3w=2E_Da_si=EA_=3F?= [mysql 4.0.x] przenoszenie kolum =?ISO-8859-2?Q?mi=EAdzy_bazam?==?ISO-8859-2?Q?i_cd_=2E=2E=2E_?= [MySQL] =?ISO-8859-2?Q?z=B3=B1czenie_tabeli_u=BFytkownik_i?==?ISO-8859-2?Q?_zdj=EAcia_z_wyborem_zdj=EAcia_domy=B6lnego?= [MySQL] Jak =?ISO-8859-2?Q?wpisa=E6_do_tabeli_pozycje_dl?==?ISO-8859-2?Q?a_wierszy_gdybym_te_wiersze_wybiera=B3_w_ok?== ?ISO-8859-2?Q?re=B6lonej_kolejno=B6ci_=3F?= Gdzie MySQL 4.1, a gdzie 5.0? [MySQL 4.0...4.1] zabezpieczenie przed =?ISO-8859-2?Q?jednoczesn?==?ISO-8859-2?Q?=B1_edycj=B1?= [MS SQL] "set names" (mySQL) w MS SQL [mysql 5.x] jak =?ISO-8859-2?Q?zrealizowa=E6_zapytanie=3F_cz?==?ISO-8859-2?Q?yli_podzapytanie_i_wi=EAcej_ni=BF_jeden_rz=B1? ==?ISO-8859-2?Q?d_wynik=F3w?=
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • red-hacjenda.opx.pl
  • Cytat

    Decede mihi sole - nie zasłaniaj mi słonca.
    Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści
    Hoc fac - tak czyń.
    A tergo - od tyłu; z tyłu.
    I czarne włosy posiwieją. Safona

    Valid HTML 4.01 Transitional

    Free website template provided by freeweblooks.com