Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Problem sa upitom

[es] :: MySQL :: Problem sa upitom

[ Pregleda: 1666 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

bciric
Bojan Ciric
Pirot

Član broj: 89846
Poruke: 207
79.101.230.*

Sajt: www.cirasoft.co.cc


Profil

icon Problem sa upitom11.12.2009. u 18:44 - pre 174 meseci
Zasto se ovaj upit
SELECT distinct username FROM `fotografija` ORDER BY `fotografija`.`id` DESC

razlicito izvrsava na razlicitim serverima, radi se o istoj bazi podataka,

izbaci on tacne podatke ali ih razlicito sortira

gde bi moglo da bude graska?

unapred hvala
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.31.24.217.adsl2.beograd.com.

Sajt: mysql.rs


+2377 Profil

icon Re: Problem sa upitom11.12.2009. u 18:59 - pre 174 meseci
radi razlicito zato sto upit radi tako sto prvo pokupi samo distinct vrednosti za username i onda to sortira po id-u. ako imas user "pera" sa id 10 i sa id 20 ne postoji "pravilo" po kom ce mysql da odredi da ti vrati peru sa 10 ili sa 20 .. vratice ti "jednog od ta dva" (vratice onaj na koji prvi naidje) tako da ako na serveru 1 imas fragmentisanu tabelu tako da prvo naidje na peru sa id 10 vratice njega a na drugom serveru naidje na peru sa id 20 prvo - vratice njega ... isto tako ako imas miku sa 11 i 21 na jednom serveru ce da vrati jedan a na drugom drugi (ili isti na oba) tako da ces na jednom mozda imati pera, mika a na drugom mika, pera jednom kada cimnes upit .. sutradan vec taj isti upit moze da ti na prvom vrati mika, pera a na drugom pera, mika ... tako da .. taj order by ti je potpuno beskoristan .. sortiraj po username to jedino ima smisla u distinct selectu
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.31.24.217.adsl2.beograd.com.

Sajt: mysql.rs


+2377 Profil

icon Re: Problem sa upitom11.12.2009. u 19:00 - pre 174 meseci
da .. ako uradis "optimize table" na oba servera i posle toga piknes upit (ako je baza ista) vrlo verovatno ces da dobijes isti rezultat ... ali ne zadugo :)
 
Odgovor na temu

bciric
Bojan Ciric
Pirot

Član broj: 89846
Poruke: 207
79.101.230.*

Sajt: www.cirasoft.co.cc


Profil

icon Re: Problem sa upitom12.12.2009. u 09:14 - pre 174 meseci
ma na jednom serveru to radi vec godinu dana i OK je, bas sortira po id fotografije i daje username autora.

a sad sam to postavio na drugi server,( a nece ni kod mene na lokalhostu), i na taj drugi zeza, a ista tabela je u pitanju

kako da uradim optimizaciju? meni je na drugom serveru tabela trenutno na oko 100 zapisa
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.31.24.217.adsl2.beograd.com.

Sajt: mysql.rs


+2377 Profil

icon Re: Problem sa upitom12.12.2009. u 09:59 - pre 174 meseci
kao sto rekoh mozes da probas "optimize table tabela1" ... mada, tu imas problem da taj redosled moze da se menja kroz verzije .. tako da ako nemas identicnu verziju ko tamo ne mora da znaci ni da ce optimize da odradi posao ...

probaj:
Code:

SELECT `username`, max(`id`) as `mid` FROM `fotografija` GROUP BY `username` ORDER BY `mid` DESC;


to bi trebalo da ti vrati rezultat koji ocekujes - uvek isti na svakom serveru


 
Odgovor na temu

bciric
Bojan Ciric
Pirot

Član broj: 89846
Poruke: 207
77.46.187.*

Sajt: www.cirasoft.co.cc


Profil

icon Re: Problem sa upitom12.12.2009. u 11:18 - pre 174 meseci
Hvala puno, ovo je OK

pozdrav
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.31.24.217.adsl2.beograd.com.

Sajt: mysql.rs


+2377 Profil

icon Re: Problem sa upitom12.12.2009. u 14:06 - pre 174 meseci
sta je fora .. od 5.x mysql sve sto nije definisano standardom da mora da bude "po ovom redosledu" ne radi po tom redosledu ... do 4.1 bi ovaj upit uvek vracao to sto "ocekujes" dakle onaj tvoj i ovaj moj upit bi uvek vracali isti rezultat, ali negde od 5.0 (cak i neke stvari tokom 4.1) se dosta tih stvari izbacilo kako bi se radilo na optimizaciji te ono sto nije obavezno po standardu ma koliko logicno bilo ne radi ... te moras nedvosmisleno u upitu da napises sta hoces da bi dobio rezultat koji ocekujes (kao npr moj upit u poredjenju sa tvojim)...
 
Odgovor na temu

bciric
Bojan Ciric
Pirot

Član broj: 89846
Poruke: 207
77.46.187.*

Sajt: www.cirasoft.co.cc


Profil

icon Re: Problem sa upitom12.12.2009. u 16:58 - pre 174 meseci
kod mene na lokalu je verzija 5.1.33 mysql
i dve razlicite baze sa istom tabelom fotografije testiram ovim mojim upitom jedna vraca kao sto i ocekujem, a druga nesto bezveze (bas kao sto si mi reko vraca neki tamo id a ne poslednji)

mada sad sam resio problem ovim tvojim upitom

pozdrav
 
Odgovor na temu

[es] :: MySQL :: Problem sa upitom

[ Pregleda: 1666 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.