Autor | Zpráva | ||
---|---|---|---|
hal_sk Profil |
#1 · Zasláno: 18. 10. 2009, 01:07:52
Zdravím.
Mám tabuľku v ktorej sú rôzne údaje, a chcem spraviť dotaz, ktorý z tých údajov takú sumarizáciu/štatistiku. Skúšam to pomocou jedného komplikovaného dotazu, ale vždy s tým mám nejaký problém. Tak som si porobil viacero jednoduchých dotazov, každý vyberá nejaké iné dáta. A teraz by som chcel tie jednoduché selektíky nejako spojiť aby z toho vznikla jedna sumarizujúca tabuľka. Dúfam, že som to vysvetlil dobre. Ak bude treba, dám sem príklad. |
||
TomášK Profil |
#2 · Zasláno: 18. 10. 2009, 02:59:45
V tom dotazu chybí otazník. Tipuju, že by se ti mohlo hodit:
SELECT ... UNION ... INSERT INTO ... SELECT CREATE VIEW ... |
||
hal_sk Profil |
#3 · Zasláno: 18. 10. 2009, 18:38:44 · Upravil/a: hal_sk
Skúšal som napríklad ten UNION, ale ten mi spojí dáta zo selectov, pod seba. Ja ich potrebujem vedľa seba.
Skrátka mám SELECT 1, ktorý vyberie z tabuliek toto: meno Jano Palo A potom SELECT 2, ktorý vyberie z tých istých tabuliek toto: pocet_bodov 13 11 A potrebujem dostať toto: meno pocet_bodov Jano 13 Palo 11 Prosím o radu ako to najefektívnejšie spojiť. |
||
hal_sk Profil |
#4 · Zasláno: 18. 10. 2009, 23:06:28
Tu je konkrétna vec, ktorú riešim. Ide o select, ktorý použijem v dotaze pre php diskusné fórum. Keď sa pozriete napr. na hlavnú stránku tohto JakPsatWeb fóra, tak uvidíte to, čo chcem docieliť: Zoznam fór (názvy), Témata (počty), Příspěvky (počty).
Ja mám 2 tabuľky, "komentare" a "fora", prvú na komentáre s atribútmi: id_komentar, id_user, je_topic, id_topic, id_forum, predmet, text, datum A druhú v ktorej sú jednotlivé problematiky, ktoré sa na fóry riešia (na JPW je to: Problémy v začátcích, Názor na stránku, atď): id_forum, nazov Chcem získať prehľad, ktorý zobrazí: Názov fóra, počet tém (je_topic=1), počet komentárov (je_topic=0) Vytvoril som si teda dotaz, ktorý zgrupuje riadky podľa druhu fóra (id_forum): SELECT fora.nazov, COUNT(komentare.id_forum) as pocet_tem, COUNT('neco') as pocet_komentarov FROM komentare LEFT JOIN fora ON komentare.id_forum=fora.id_forum WHERE komentare.je_topic=1 GROUP BY komentare.id_forum No a tento dotaz mi vyberie buď len počty tém pre jednotlivé fóra (to je tento prípad, lebo je tam "WHERE komentare.je_topic=1"), alebo počty komentárov pre jednotlivé fóra, to v prípade, že použiem inú podmienku "WHERE komentare.je_topic=0". Takže by som prosil vysvetliť, ako to spraviť, aby sa mi vrátili počty tém a počty príspevkov v jednej tabuľke, respektíve, či sa nedá použiť podmienka WHERE, pre každý stĺpec iná. |
||
hal_sk Profil |
#5 · Zasláno: 19. 10. 2009, 22:25:00
OK, už to mám s pomocou vnorených selectov.
|
||
Časová prodleva: 14 let
|
0