Hirdetés

Új hozzászólás Aktív témák

  • Ispy
    nagyúr

    Csinálhatod azt is, hogy mindent, de mindent egyetlen táblában tárolsz.

    Ez marhasag.

    Ertelemszeru, hogy kulon tablakra van szukseg, a kerdes a koztuk levo kapcsolatok.

    Minimalisan kell harom tabla, csapatok, szezon es meccsek.
    A kerdes az, hogyan lehet kozottuk a kapcsolatokat felepiteni.

    Ertelemszeru, hogy adott szezonban vannak adott csapatok, de ez valtozhat - esemeny tortenik.
    Ertelemszeru, hogy minden csapat minden mas csapattal jatszik - de nem mindig, itt is esemeny tortenik.
    Ertelemszeru, hogy minden csapat egyszer otthon, egyszer idegenben jatszik - de nem mindig, itt is esemeny tortenik.

    A szezon az "x ev/x+1 ev" neven fut, allandoan valtozo kezdesi es befejezesi datumokkal, cask a sorszama biztos.

    A meccsek minden szezonban vannak meghatarozva, mindig valtozo napokon, itt datum es ido mezo kell a
    pontos beazonositasra.

    A korabbi javaslatod jo otlet volt, kell egy "szotar" segedtabla, amivel a fentiekhez meg lehet egy esemenyek mezot is felvinni, ahhoz is datum es ido kell, igy barmi tortenik a szezonban, jon egy esemeny, es kesobb annak alapjan lehet az elemzeseket megoldani es az esemenyeket "datum-ido" tipusu mezovel lehet kezelni.
    .
    Lehet, hogy az lesz a magoldast, hogy minden adathoz kell egy datum-ido mezot csatolni es az alapjan lehet megtalalni a rendezesi szempontokat a kesobbi elemzesekhez, de akkor meg kell oldani, hogy pl. az adott szezon az nem egy adat, hanem ketto, van kezdete es befejezese, mindketto datum-ido mezovel, es a szezon a kozottuk levo idosavra vonatkozik.

    Ez viszont nekem azt veti fel, hogy nem tudom a harom fenti tablat kozvetlenul osszekapcsolni, hanem valahogy mindig be kell iktatnom kozejuk ezt a "szotar" segedtablat, mert abban vannak a mindenhez kapcsolodo datum-ido mezok, ezzel akadtam el, tul sok a kapcsolat.

    A kerdes az, hogyan lehet kozottuk a kapcsolatokat felepiteni.

    Nem kérdés, relációs adatbázis...

    Dimenzió táblák:
    - csapatok
    - szezonok
    - játékosok
    - bírók
    - tökömtudjamégmi

    Ténytáblák:
    - meccsek

    pl:

    Csapatok tábla:
    - név
    - alapítás éve
    - tulajdonos_id
    - címadatok
    stb.

    Szezonok tábla:
    - szezonok_id
    - megnevezés
    - kezdete
    -vege

    Meccs tábla:
    - meccs_id
    - szezon_id
    - dátum
    - hazai_csapat_id
    - vendeg_csapat_id
    - mikor
    - eredmény

    Amikor le akarsz kérdezni, akkor ahol id van, ott bejoinolod a törzsadatokat:

    SELECT
    szezonok.megnevezes,
    meccsek.datum,
    hazai.nev,
    vendeg.nev,
    meccsek.mikor,
    meccsek.eredmeny
    FROM meccsek
    inner join szezonok on meccsek.szezon_id=szezonok.id
    inner join csapatok hazai on meccsek.hazai_csapat_id=hazai.id
    inner join csapatok vendeg on meccsek.vendeg_csapat_id=vendeg.id

    kábé, ezt most csak összeírtam gyorsan, de így kell elképzelni.

Új hozzászólás Aktív témák