problem z konstrukcja IN w postgresie 8.0
restman - 21-12-2005 12:15
problem z konstrukcja IN w postgresie 8.0
witam mam nastepujace tabele
AA (id serial PK, lista_mozliwosci varchar) BB (id serial PK, mozliwosc varchar)
gdzie lista_mozliwosci to np 25,9,19,293,60 a mozliwosci to powiedzmy 9
i teraz
przy zapytaniu w postaci (uproszczonej)
SELECT a.*,b.* FROM AA a, BB b WHERE b.mozliwosc IN (a.mozliwosci)
nie zwraca zadnego wyniku, w identyczna sytuacja w mysql zwraca rezultat ktorego oczekuje.
gdzie jest blad? lub tez jak powinno wygladac takie zapytanie
pozdrawiam
hubert depesz lubaczewski - 21-12-2005 12:15
Dnia 16.12.2005 restman <restman@o2.pl> napisał/a: > AA (id serial PK, lista_mozliwosci varchar) > BB (id serial PK, mozliwosc varchar) > gdzie lista_mozliwosci to np 25,9,19,293,60 > a mozliwosci to powiedzmy 9 > przy zapytaniu w postaci (uproszczonej) > SELECT a.*,b.* FROM AA a, BB b > WHERE b.mozliwosc IN (a.mozliwosci)
moment. czyli chcesz zapytanie: select a.*, b.* from AA a, BB b where '9' in ('25,9,19,293,60') ?? przecież to nie może nic zwrócić?! wartość '9' nie jest jedną z (jednej!) wartości '25,9,19,293,60' znormalizuj to, nie trzymaj listy wartości w jednym polu i już.
depesz
-- *------------------------------------------------------------------* najwspanialszą rzeczą jaką dało nam nowoczesne społeczeństwo, jest niesamowita wręcz łatwość unikania kontaktów z nim
Przemyslaw Popielarski - 21-12-2005 12:15
hubert depesz lubaczewski <depesz@eo.pl> wrote: > czyli chcesz zapytanie: > select a.*, b.* from AA a, BB b where '9' in ('25,9,19,293,60') > ?? > przecież to nie może nic zwrócić?!
ale select a.*, b.* from AA a, BB b where 9 in (25,9,19,293,60) i select a.*, b.* from AA a, BB b where '9' in ('25','9','19','293','60') juz w MySQL by zwrocilo.
-- ../ premax ../ premax@hot,pl ../ koniec i bomba, a kto czytal ten traba. w.g.
Piotr 'piter' Hlawski - 21-12-2005 12:15
Przemyslaw Popielarski wrote:
> hubert depesz lubaczewski <depesz@eo.pl> wrote: >> czyli chcesz zapytanie: >> select a.*, b.* from AA a, BB b where '9' in ('25,9,19,293,60') >> ?? >> przecież to nie może nic zwrócić?! > > ale > select a.*, b.* from AA a, BB b where 9 in (25,9,19,293,60) > i > select a.*, b.* from AA a, BB b where '9' in ('25','9','19','293','60') > juz w MySQL by zwrocilo. >
zauważasz różnicę między '25','9','19','293','60' a '25, 9, 19, 293, 60'?
-- ..:: Piter // phlawski@gmail.com // gg: 4534287 ::. Zawsze to miło dowiedzieć się o przyjęciu - nawet jeśli znowu będą chcieli posadzić cię miedzy te małe kawałeczki, które pętają się za biesiadnikami.
hubert depesz lubaczewski - 21-12-2005 12:16
Dnia 18.12.2005 Przemyslaw Popielarski <premax@hot.pl> napisał/a: >> select a.*, b.* from AA a, BB b where '9' in ('25,9,19,293,60') >> ?? >> przecież to nie może nic zwrócić?! > ale > select a.*, b.* from AA a, BB b where 9 in (25,9,19,293,60) > i > select a.*, b.* from AA a, BB b where '9' in ('25','9','19','293','60') > juz w MySQL by zwrocilo.
i obydwa w postgresie zwrócą.
depesz
-- *------------------------------------------------------------------* najwspanialszą rzeczą jaką dało nam nowoczesne społeczeństwo, jest niesamowita wręcz łatwość unikania kontaktów z nim
Przemyslaw Popielarski - 21-12-2005 12:16
Piotr 'piter' Hlawski <phlawski@gmail.com> wrote: >> ale ^^^ >> select a.*, b.* from AA a, BB b where 9 in (25,9,19,293,60) >> i >> select a.*, b.* from AA a, BB b where '9' in >> ('25','9','19','293','60') juz w MySQL by zwrocilo. >> > > zauważasz różnicę między '25','9','19','293','60' a '25, 9, 19, 293, > 60'?
Zauwazasz niektore (tutaj podkreslone) slowa?
-- ../ premax ../ premax@hot,pl ../ koniec i bomba, a kto czytal ten traba. w.g.
Piotr 'piter' Hlawski - 21-12-2005 12:16
Przemyslaw Popielarski wrote:
> Piotr 'piter' Hlawski <phlawski@gmail.com> wrote: >>> ale > ^^^ >>> select a.*, b.* from AA a, BB b where 9 in (25,9,19,293,60) >>> i >>> select a.*, b.* from AA a, BB b where '9' in >>> ('25','9','19','293','60') juz w MySQL by zwrocilo. >>> >> >> zauważasz różnicę między '25','9','19','293','60' a '25, 9, 19, 293, >> 60'? > > Zauwazasz niektore (tutaj podkreslone) slowa? >
owszem, nie mniej było to przywalenie jak dzik w sosne, na zasadzie "tego i owego nie umiem ale dobrze stepuje.."
-- ..:: Piter // phlawski@cut_this_crap.gmail.com // gg: 4534287 ::. Proszę bardzo, jedz, ile wlezie. Tylko żebyś potem mógł wleźć w drzwi.
zanotowane.pldoc.pisz.plpdf.pisz.pleffulla.pev.pl
|
[MSSQL2000] Problem z =?ISO-8859-2?Q?tabel=B1/indeksem/zapytanie?==?ISO-8859-2?Q?m_czy_b=B3=B1d_w_bazie_danych=2E=2E=2E?=
mysql i mysql-front, problem
String line; if (line=="cos"){...}....problem
[oracle] =?ISO-8859-2?Q?zmia=BFd=BFony_przez_problem=3A_za?==?ISO-8859-2?Q?pytanie_do_hierarchi?=
[PostgreSQL] - jak =?ISO-8859-2?Q?zabezpieczy=E6_interesy_tw?==?ISO-8859-2?Q?=F3rcy_systemu_=3F=3F=3F?=
postgresql - int/int
Problem z wartościami w MySQL :( [ MySQL and ASP and VBScript ]
[PGSQL] czy ktos mial problemy z initdb pgsql 8.1 ?
[MySQL] Problem z zapisem danych w bazie danych
Problem z mysql - can't connect to MySQL/nietypowo...
zanotowane.pldoc.pisz.plpdf.pisz.pllunadance.htw.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 |
|