Autor | Zpráva | ||
---|---|---|---|
DGO Profil * |
#1 · Zasláno: 26. 11. 2007, 22:09:31
Zdravím, mám tento problém s dotazem na MSSQL CE 3.5 (nelze tedy používat vnořené SELECTY)
4 Tabulky HRACI (ID,jmeno,prijmeni,post,prichod...) TRENINKY (ID,datum,...) UCASTI_NA_TRENINKU (akceID - id treninku,hracID - id hrace) POSTY (ID - id postu,popis) Mým cílem je dostat výpis: HRAC.ID,prijmeni,jmeno,prichod,post(id),popis postu,pocet moznych treninku, pocet ucasti počet možných tréninků - součet tréninků, kterých se hráč mohl zúčastnit tj. porovnání datum příchodu hráče s datumem tréninku, pokuď je trénink po datu příchodu hráče, tak se započítává do možných tréninků počet účastí - součet tréninků kterých se hráč účastnil tj. součet všech akceID kde se hráčID = HRACI.ID Mám tento dotaz, který SKORO dělá to co vyžaduji, ale nefunguje poslední sloupec, který má udávat součet zúčastněných tréninků...
Dokáže mi někdo prosím poradit jak na to, když nejdou vnořené dotazy ? Díky předem. |
||
Kajman_ Profil * |
zkuste
COUNT(distinct UCASTI_NA_TRENINKU.akceID) nebo možná bude lepší přidat podmínku LEFT OUTER JOIN TRENINKY ON HRACI.prichod < TRENINKY.datum LEFT OUTER JOIN UCASTI_NA_TRENINKU ON HRACI.ID = UCASTI_NA_TRENINKU.hracID and TRENINKY.ID=UCASTI_NA_TRENINKU.akceID |
||
DGO Profil * |
#3 · Zasláno: 26. 11. 2007, 22:29:32
Tak při požití COUNT(Distinct hlásí chybu...
jenom ještě dodám jak vypadá výsledek původního dotazu 10 Zdeněk Povídal 15.11.2007 0:00:00 4 True True Brankář 2 0 1 Jirka Novotný 27.11.2007 0:00:00 2 False True Útočník 1 0 4 Richard Novotný 15.11.2007 0:00:00 3 False True Obránce 2 0 takhle to vypadá vše v pořádku jenom do doby než se vloží nějaké účasti, pak např. při 1 účasti ze 2 možných vyjede výsledek, že místo 1 učáasti má hráč 2 ze 2.. |
||
DGO Profil * |
#4 · Zasláno: 26. 11. 2007, 22:35:36
Teď to funguje ! Ta podmínka pomohla výborně. Mockrát děkuji za pomoc.
|
||
Časová prodleva: 16 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0