Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 10 odgovora
  • 3.959 pregleda

Najnovija ↓

Select iz vise tabela po odredjenom redosledu 29.01.2010. u 16:38 · pre 203 meseca #1
Jel moguce preko neko odredjenog query-ja selektovati podatke po
unapred definisanom redolsedu?

Evo primera:

Imam redosled po kojem podaci treba da se pojavljuju:
Code:
n=1|b=1|m=2|n=3|b=4

Ovo konkretno znaci da prvo treba izabrati red sa id-jem 1 iz tabele n,
zatim red sa id-jem 1 iz tabele b,
zatim red sa id-jem 2 iz tabele m,
zatim red sa id-jem 3 iz tabele n,
zatim red sa id-jem 4 iz tabele b

Jel moguce nesto tako odraditi preko query-ja ili moram da kreiram tri niza i posle sortiram?
Re: Select iz vise tabela po odredjenom redosledu 29.01.2010. u 17:15 · pre 203 meseca #4
nema na cemu :D ... da si rekao koja verzija mysql-a, napisao kako izlgedaju tacno te tabele, kako izgledaju podaci i nekako .. ovako .. kakvo pitanje takav odgovor

inace moz da izvodis kerefeke tipa da napravis uniju u neku temp tabelu sa dodatnim poljem za sortiranje pa onda iz temp tabele da radis neke vratolomije ... ali realno .. tesko .. eventualno neka stored procedura ..

Code:

select id, a, b, c from (select *, 1 as srt from t1 union select *, 2 as srt from t2 union  ... select *, 5 as srt from t5) t order by id, srt;


ovo ce da ti sortira po id-u ali ako imas isti id u 5 tabela baci prvo onaj iz t1 pa iz t2 pa ....
ali da ti uplete podatke ... tesko bez stored procedure
Potpis
arhimed
http://www.mysql.rs/ | http://elco.crsndoo.com/
Re: Select iz vise tabela po odredjenom redosledu 29.01.2010. u 17:47 · pre 203 meseca #5
mysql v5.0.77

Code:


n tabela
id       category        links
1        cat1             l1
2        cat2             l2
3        cat3             l3 

m tabela
id       text              author
1        te1               a1
2        te2               a2
3        te3               a3

b tabela
id       image            text              
1        img1             te1
2        img2             te2
3        img3             te3
4        img4             te4


Rezultat bi trebao da izgleda po ovom sablonu n=1|b=1|m=2|n=3|b=4:

Code:

1        cat1             l1
1        img1             te1
2        te2               a2
3        cat3             l3
4        img4             te4
Re: Select iz vise tabela po odredjenom redosledu 29.01.2010. u 18:00 · pre 203 meseca #6
ne kontam po kom pravilu ti ulaze n i m za id1 a ne ulazi b za id 1 ?

ovo je ok ako ove 3 tabele imaju samo ovih nekoliko redova .. sta radis sa id = 40 u m/n/b ??

ovo moz dobijes

select id, category, links from n where id = 1 union select id, text, author from m where id = 1 union select id, text, author where id=2 union select id, category, links from n where id = 3 union select id, image, text where id=4;

samo .. teeeeeeeeeeeeeeeeesko da si to trazio ..
Potpis
arhimed
http://www.mysql.rs/ | http://elco.crsndoo.com/
Re: Select iz vise tabela po odredjenom redosledu 29.01.2010. u 18:14 · pre 203 meseca #7
Sablon je potpuno nasumican i uvek moze biti drugaciji, tako da i
selekcija redova iz razlicitih tabela je nasumicna (po tom sablonu).

Ma kapiram da je to mnogo komplikovano i da verovatno moze... :)

Mislim da cu morati da kombinujem nizove u php-u i da ih sortiram...

Hvala ti...
Re: Select iz vise tabela po odredjenom redosledu 29.01.2010. u 21:52 · pre 203 meseca #8
problem je u "smislu" posto to sto si postavio u proslom postu nema smisla ... tj - pravilo nije definisan posto po tom redosledu ne postoji razlog zasto "ovaj ulazi" a "onaj ne ulazi" ..

no generalno mysql moze da sortira po jednoj ili vise kolona - jednu tabelu
ti nekoliko tabela mozes da spojis u jednu tabelu sa union-om

sve sto ne moze na taj nacin - moras ili rucno ili nekom stored procedurom

Potpis
arhimed
http://www.mysql.rs/ | http://elco.crsndoo.com/
Re: Select iz vise tabela po odredjenom redosledu 29.01.2010. u 22:55 · pre 203 meseca #9
Napravio sam 3 upita i tri niza pa ih sortirao i dobio jedan
niz sa odgovarajucim redosledom elemenata.

A sto se tice smisla...
Pa taj sablon kreira admin u odredjenom trenutku.
Dakle sablon se sastoji od vise elemenata u odgovarajucem obliku.
Slovo oznacava tabelu, a broj iza slova je unique id reda u toj
tabeli koji je potrebno vratiti. Php-om razdvojim sablon po tome
bi trebalo odraditi query.
Zasto nekog id-ja nema, zato jer ga admin nije ubacio u sablon.
Nista vise nije potrebno za query osim imena tabele i id-ja reda...

Ma iscupao sam se nekako sa PHP-om :) hvala u svakom slucaju...
Re: Select iz vise tabela po odredjenom redosledu 29.01.2010. u 23:04 · pre 203 meseca #10
Citat:
sekvoja: 
Pa taj sablon kreira admin u odredjenom trenutku.
Dakle sablon se sastoji od vise elemenata u odgovarajucem obliku.
Slovo oznacava tabelu, a broj iza slova je unique id reda u toj
tabeli koji je potrebno vratiti. Php-om razdvojim sablon po tome
bi trebalo odraditi query.
Zasto nekog id-ja nema, zato jer ga admin nije ubacio u sablon.
Nista vise nije potrebno za query osim imena tabele i id-ja reda...


nesto ti lose objasnjavas posto to nema bas mnogo smisla ... posto ovo sto si sada napisao znaci da za svaki par u sablonu ti treba da napravis jedan upit .... dal ces da napravis toliko upita jedan po jedan ili ces da uradis uniju od x upita nema neke razlike ... no kao sto rekoh, neki deo nisi dobro objasnio - a prilicno sam siguran da vam je koncept pogresan (taj sa tim sablonima i sa takvom strukturom tabela) .. no - nebitno .. resio si problem, kako god ...
Potpis
arhimed
http://www.mysql.rs/ | http://elco.crsndoo.com/
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme