Problem z prostym zapytaniem (timestamp!)
koralgol1955@o2.pl - 23-06-2006 00:09
Problem z prostym zapytaniem (timestamp!)
Mam maly problem pracuje na postgresql ale pewnie na innych jest tak samo. Mam tabele a w niej pole timestamp . Pole to oczywiscie ma date i godzine .. Ja chce uaktualnic wiersze z tej tabeli ktore maja date dzisiejsza bez wzgledu na godzine. ja robie update tabela set ... where nazwapola_timestamp = '2006-06-06' ....i nie usuwa zadnego pola pozdr Jarek
-- Wysłano z serwisu OnetNiusy: http://niusy.onet.pl
Sergiusz Rozanski - 23-06-2006 00:10
Dnia 22.06.2006 koralgol1955@o2.pl <koralgol1955@o2.pl> napisał/a: > Mam maly problem pracuje na postgresql ale pewnie na innych jest tak samo. Mam > tabele a w niej pole timestamp . Pole to oczywiscie ma date i godzine .. > Ja chce uaktualnic wiersze z tej tabeli ktore maja date dzisiejsza bez > wzgledu na godzine. ja robie > update tabela set ... where nazwapola_timestamp = '2006-06-06' > ...i nie usuwa zadnego pola
update nic nie usuwa, zmienia zawartość :) dziś nie jest 6-6-2006 ;)
Operator równości pewnie nie wie o co chodzi i porówuje coś innego (zapewne teksty), nie da się tak porównać musisz podać pole równe, czyli całość, spróbuj wyjąć z timestampa dzień 'date_trunc('day',..)' i wtedy porównać, powinno pomóc. Może być konieczność uzupełnienia daty o zerową godzine więc:
date_trunc('day',nazwapola_timestamp) = '2006-06-06 00:00:00+00'
można też zaryzykować substr od biedy:
substr(nazwapola_timestamp,1,10) = '2006-06-06'
-- *** rozanski.at.sergiusz.dot.com sq3bkn *** *** http://jeep.comm.pl *** *** rtg project http://gg.overwap.net ***
Brzezi - 23-06-2006 00:10
czw, 22 cze 2006 o 13:01 GMT, Sergiusz Rozanski napisał(a):
> można też zaryzykować substr od biedy: > > substr(nazwapola_timestamp,1,10) = '2006-06-06'
polecam przyjrzec sie wynikowi zapytania:
select nazwa_polatimestamp::date from tabela;
Pozdrawiam Brzezi -- [ E-mail: brzezi@enter.net.pl ][ brzezi:~# uptime ] [ Ekg: #3781111 ][ 13:03:22 up 24 min, 2 users, load ] [ LinuxUser: #249916 ][ average: 0.21, 0.37, 0.41 ]
Sergiusz Rozanski - 23-06-2006 00:10
Dnia 22.06.2006 Brzezi <usunto.brzezi@enter.net.pl> napisał/a: > czw, 22 cze 2006 o 13:01 GMT, Sergiusz Rozanski napisał(a): > >> można też zaryzykować substr od biedy: >> >> substr(nazwapola_timestamp,1,10) = '2006-06-06' > > polecam przyjrzec sie wynikowi zapytania: > > select nazwa_polatimestamp::date from tabela;
też fakt, można tak rzucić.
-- *** rozanski.at.sergiusz.dot.com sq3bkn *** *** http://jeep.comm.pl *** *** rtg project http://gg.overwap.net ***
=?iso-8859-2?Q?Andrzej_Str=F3=BFy=F1ski?= - 23-06-2006 00:10
Użytkownik "Sergiusz Rozanski" napisał: [...] >>> można też zaryzykować substr od biedy: >>> >>> substr(nazwapola_timestamp,1,10) = '2006-06-06' >> >> polecam przyjrzec sie wynikowi zapytania: >> >> select nazwa_polatimestamp::date from tabela; > > też fakt, można tak rzucić.
nazwapola_timestamp like '2006-06-06%' też można :)
A.S.
Sergiusz Rozanski - 23-06-2006 00:10
Dnia 22.06.2006 Andrzej Stróżyński <astrozynski@poczta_dot_onet.pl> napisał/a: > > Użytkownik "Sergiusz Rozanski" napisał: > [...] >>>> można też zaryzykować substr od biedy: >>>> >>>> substr(nazwapola_timestamp,1,10) = '2006-06-06' >>> >>> polecam przyjrzec sie wynikowi zapytania: >>> >>> select nazwa_polatimestamp::date from tabela; >> >> też fakt, można tak rzucić. > > nazwapola_timestamp like '2006-06-06%' też można :)
Ale to chyba najmniej optymalna opcja. Najefektywniej zadziała chyba właśnie rzut na ::date
-- *** rozanski.at.sergiusz.dot.com sq3bkn *** *** http://jeep.comm.pl *** *** rtg project http://gg.overwap.net ***
zanotowane.pldoc.pisz.plpdf.pisz.pleffulla.pev.pl
|
Oracle, SQL, PL/SQL. Jak =?ISO-8859-2?Q?napisa=E6_zapytanie=2C?==?ISO-8859-2?Q?_kt=F3re_zwr=F3ci_nazw=EA_atrybutu=2C_kt=F3reg o?==?ISO-8859-2?Q?_warto=B6ci_spe=B3niaj=B1_zadany_warunek?=
=?ISO-8859-2?Q?Narz=EAdzie_do_budowania_zapyta=F1_SQL=2C?==?I SO-8859-2?Q?_PL/PgSQL=2C_PL/SQL=2C_T-SQL?=
[ms sql] =?ISO-8859-2?Q?wy=B6wietlenie_pierwszych_5_rekord?==?ISO-8859-2?Q?=F3w_z_zapytania_=3F_odpowiednik_ROWNUM_w_o?== ?ISO-8859-2?Q?raclu_dla_MS_SQL=27a?=
mysql i mysql-front, problem
String line; if (line=="cos"){...}....problem
Problemy z =?ISO-8859-2?Q?instalacj=B1_PostgreSQL_na_syste?==?ISO-8859-2?Q?mach_Windows?=
[postgres] Problem z =?ISO-8859-2?Q?zmian=B1_struktury_i_z?==?ISO-8859-2?Q?ale=BFno=B6ciami=2E?=
[oracle] =?ISO-8859-2?Q?zmia=BFd=BFony_przez_problem=3A_za?==?ISO-8859-2?Q?pytanie_do_hierarchi?=
phpMyAdmin zadaje =?ISO-8859-2?Q?z=B3e_zapytania=2E=2E=2E_Dl?==?ISO-8859-2?Q?aczego=3F?=
[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.pldoc.pisz.plpdf.pisz.plczterowers.keep.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 |
|