SQL baze podataka - Sponzor: Baze-Podataka.net MySQL, MSSQL, Oracle, Access, ODBC. Ako imate problem brže i preciznije ćete dobiti odgovor ako priložite strukturu tabela ili skript koji kreira tabele i puni ih test podacima umesto što to problem opisujete samo rečima. Sponzor: Baze-Podataka.net - Blog o bazama podataka |
|
Alati teme | Način prikaza |
30. 09. 2011. | #11 |
član
Certified
Datum učlanjenja: 05.11.2005
Poruke: 82
Hvala: 7
1 "Hvala" u 1 poruci
|
|
01. 10. 2011. | #12 |
xyz
Grand Master
Datum učlanjenja: 25.10.2006
Poruke: 893
Hvala: 87
346 "Hvala" u 163 poruka
|
A ovo?
Kôd:
SELECT id, id_autora, id_knjige, cena FROM knjige a WHERE knjiga_id = (SELECT b.id_knjige FROM knjige b WHERE a.id_autora = b.id_autora ORDER BY b.cena DESC LIMIT 1) GROUP BY id_autora |
"Hvala" srdjan za poruku: |
01. 10. 2011. | #13 |
član
Certified
Datum učlanjenja: 05.11.2005
Poruke: 82
Hvala: 7
1 "Hvala" u 1 poruci
|
@srdjan: radi ali mi se cini da je sporije od jablanovog resenja...
|
01. 10. 2011. | #14 |
VD IT Direktora
Invented the damn thing
Datum učlanjenja: 08.06.2005
Lokacija: Beograd
Poruke: 2.118
Hvala: 503
1.307 "Hvala" u 282 poruka
|
Evo probao sam kod sebe sa oko ~50k recorda, tačno je da je sporo.
Ovo kod mene radi dosta brže (postgres): Kôd:
select k1.* from autori a inner join knjige k1 on a.id = k1.id_autora and k1.id = ( select id from knjige k2 where k2.id_autora = a.id order by cena desc limit 1 ) order by a.id
__________________
blog Poslednja izmena od jablan : 01. 10. 2011. u 10:05. |
2 članova zahvaljuje jablan za poruku: |
01. 10. 2011. | #15 |
član
Certified
Datum učlanjenja: 05.11.2005
Poruke: 82
Hvala: 7
1 "Hvala" u 1 poruci
|
@jablan: ovo je najbrze resenje do sada. Hvala puno!
|
|
|