| | |
| Stránka: 1 z 1
| [ Príspevkov: 2 ] | |
Autor | Správa |
---|
Registrovaný: 24.10.11 Prihlásený: 29.12.20 Príspevky: 284 Témy: 96 Bydlisko: Dlhé nad Ci... |
Ahojte, snažím sa vypísať komentár od užívateľa save_uncle97 s najväčším počtom upvotov z tabuľky: skúšal som to pomocou Kód: select login,text,max(upvotes) from (select login,text,upvotes,idpost from coment where login='save_uncle97') group by login,text; ale ten group by robí problémy, keď dám len group by login tak to funguje: ale ak tam pridám aj text, do selectu a tým pádom aj do group by musím, tak to robí hlúposti: v takomto tvare chcem výpis, ale len ten najviac upvotovaný, ale neviem ako do toho výpisu dostať ten text.
|
|
Registrovaný: 17.07.11 Prihlásený: 29.12.20 Príspevky: 1516 Témy: 3 | Napísal BX: 10.05.2016 7:49 | |
|
Group by ti pravdepodobne ani netreba. 1. riešenie: select všetkých komentárov od používateľa, zoradiť ich podľa upvotes (desc) a vybrať prvý riadok (na to je v Oracle rownum, alebo top)
2. riešenie mohlo by stačiť aj na konci do where ešte upvotes = (select max(upvotes) from coment). Síce je to subquery, takže trocha pomalšie, ale v tomto prípade to asi nebude vadiť.
_________________ Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám! |
|
| Stránka: 1 z 1
| [ Príspevkov: 2 ] | |
| Nemôžete zakladať nové témy v tomto fóre Nemôžete odpovedať na témy v tomto fóre Nemôžete upravovať svoje príspevky v tomto fóre Nemôžete mazať svoje príspevky v tomto fóre
|
|