Autor Zpráva
Casper
Profil
Dobrý den, potřeboval bych seřadit výpis z db pomocí poddotazu. Select vypadá nějak takto:

SELECT nick FROM clenove ORDER BY (SELECT SUM(XXX) FROM clanwars) ASC


přičemž právě v SUM(XXX) by měli být zahrnuty všechny součty bodů z tabulky clanwars kde sloupce mají stejné názvy jako všechny řádky tabulky clenove. Podotýkám že v tabulce clanwars nejsou jen tyto sloupce ale i jiné. Nevíte někdo jak by se to dalo řešit ? předem díky
AM_
Profil
Databáze tu mají samostatné fórum.
ale mělo by to jít takhle:
SELECT nick, (SELECT SUM(XXX) FROM clanwars) AS xxx FROM clenove ORDER BY xxx ASC
Ovšem když se na to teď dívám, je to dost nesmysl, SUM(xxx) FROM clanwars bude pro všechny řádky z clenove stejný. Myslím, že to co chceš, je spíš spojování tabulek
Casper
Profil
Jaj omlouvám se, překlep, chtěl jsem to umístit do databází, snad to Moderátoři změní, jinak právě problém je v tom jak označit to XXX když je to vlastně víc sloupců a já to chci řadit podle součtu všech řádků těch sloupců (které mají právě stejný název jako řádky které chci vypisovat z tabulky clenove). Spojování tabulek neřeší ORDER BY nebo ano ?
AM_
Profil
Ale řeší a to třeba takhle:
SELECT clenove.nick, SUM(clanwars.a + clanwars.b + clanwars.c) AS soucet FROM clenove LEFT JOIN clanwars ON clenove.id = clanwars.clen GROUP BY nick ORDER BY soucet
Casper
Profil
Děkuji za snahu ale pravděpodobně jsem se špatně vyjádřil, pokusím se být názornější.

Máme tabulku clenove, kde jsou ve sloupcích informace o členech (ty nás nezajímají mimo sloupec nick)

nick--------věk-----bydliště
Honza-----26------Praha
Adam------18-------Brno

Pak máme tabulku clanwars, zde ve sloupcích informace o daných clanwars + sloupce s názvy shodnými s clenove.nick a pod nimi v řádcích jsou čísla kolik v kterém clanwar dosáhli bodů

souper----web_soupere---Honza---Adam
lamy----------www1-----------0--------8
nekdo--------www2-----------3--------2

A já potřebuji vypsat členy v takovém pořadí aby byli seřazeni podle toho kdo dal za všechna clanwars dohromady nejvíce bodů. :) snad je to jasnější a snad mi někdo pomůže :) kdyžtak předem díky
AM_
Profil
Tak to je spatny navrh tabulky. Nechce se mi premyslet o tom, jak by se to dalo udelat, kdyz takhle se to nedela. Predelej si ty tabulky takhle:
clenove: id, nick, vek, bydliste
clanwars: id, id_clena, id_soupere, skore
souperi: id, nick
tabulka clanwarspak bude vypadat:
id-clen-souper-body
1 - 1 - 1 - 0
2 - 1 - 2 - 3
3 - 2 - 1 - 8
4 - 2 - 2 - 2
Casper
Profil
Ok, děkuji

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: