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 |
05. 09. 2006. | #1 |
Boban Karišik
Expert
|
GROUP BY grrrr
uh...mucim se sa ovim vec 3 sata i nikako da provalim.
Ne znam kako da objasnim drugacije osim primerom, pa evo primera: Kôd:
SELECT *,COUNT(*) AS `count` FROM `tablea1` AS `t1`,`tablea2` AS `t2` WHERE t1.uid='1' AND t1.uid=t2.uid GROUP BY t2.name ORDER BY t1.id DESC; Recimo da je prva tabela sa porukama, a druga tabela sa informacijama o useru koji je poslao poruku. E sada, ja ovde kao output dobijem ono sto sam trazio: Boban 5 Darko 3 marko 8 Janko 2 itd. E sada, ja bih zeleo da ih sortiram po tako da mi prvi gore bude onaj koji je zadnji poslao poruku i to sam pokusao sa ORDER BY t1.id medjutim, kada sam uradio GROUP BY, on je povukao prvu poruku koju je poslao dati user i samim tim i t1.id te prve poruke, pa mi ne izlistava(sortira) po poslednjoj poruci, vec po poslednjoj poruci prvih poruka svih usera koji su poslali poruke... Kako da mu stavim da mi izlistava poslednju poruku sa GROUP BYm ja sam probao sa: .. GROUP BY t2.name,t1.id ali onda ne dobijem ono sto zelim vec nesto ovako(sto je i logicno): Darko 1 Janko 1 Janko 1 Darko 1 Boban 1 Marko 1 Marko 1 itd... Hvala
__________________
Ako već nisi Anđeo, bar budi čovek... |
05. 09. 2006. | #2 |
Domagoj Horvat
Expert
|
Kôd:
SELECT *,COUNT(*) AS `count` FROM `tablea1` AS `t1`,`tablea2` AS `t2` WHERE t1.uid='1' AND t1.uid=t2.uid GROUP BY t2.name ORDER BY t1.id DESC; Kôd:
SELECT *, COUNT(tabela2.uid) AS count FROM tabela2 LEFT JOIN tabela1 ON (tabela1.uid=tabela2.uid) GROUP BY tabela1.uid ORDER BY tabela1.id DESC lupam na brzinu iz jednog primjera sta sam ja koristio za slicnu stvar...
__________________
postoje ludosti bez kojih je nemoguce ljudsko dostojanstvo |
05. 09. 2006. | #3 | |
old school
Professional
Datum učlanjenja: 15.06.2005
Lokacija: Novi Beograd
Poruke: 448
Hvala: 21
70 "Hvala" u 46 poruka
|
Citat:
Onda bi to nekako bilo ovako: Kôd:
Select Aut.Name, (Select Count(*) From Post Where Post.IDautor = Aut.IdAutor) as PostCount, (Select Max(Post.Date) From Post Where Post.IDautor = Aut.IdAutor) as LastPostDate From Autor Aut Order By 3 Desc
__________________
http://www.vesic.org | Blog: http://www.vesic.org/blog/ | Fina kolekcija programa: http://www.vesic.org/programi/ |
|
|
|
Slične teme | ||||
Tema | Početna poruka teme | Forum | Odgovori | Poslednja poruka |
GROUP BY zavrzlama | ivanhoe | SQL baze podataka - Sponzor: Baze-Podataka.net | 10 | 05. 03. 2010. 21:55 |
count() i group by = nema rezultata za slucaj kada je count() = 0 | BrainDamage | SQL baze podataka - Sponzor: Baze-Podataka.net | 6 | 26. 08. 2008. 23:51 |
Najbolja aplikacija za group blog | Dejan Bizinger | Web aplikacije, web servisi i software | 3 | 04. 12. 2006. 15:04 |
http://www.last.fm/group/devprotalk | oliver | Opušteno | 22 | 07. 11. 2006. 13:32 |
Qualysoft Group - Senior java developer | Aleksandar.Ilic | Poslovne ponude i zapošljavanje | 0 | 31. 10. 2006. 11:41 |