Normalisointi?

--------

Hieman tuo normalisointi hakusessa joten voiskos joku viisaampi auttaa vähäsen. Tässä on erään tapahtumakalenterin tauluja.

Tapahtuma
id | tapatuma

Paikka
id | paikka

Tapahtumat
id | tapahtuma_id | paikka_id | alkaa | loppuu

Tuollee on tällähetkellä, mutta kun katselee dataa niin alkaa ja loppuu (molemmat datetime) ovat aika usein toistoja (noin 45% toistoja), jotenka olisikos parempa tehdä näin


Tapahtuma
id | tapatuma

Paikka
id | paikka

Aika
id | aika

Tapahtumat
id | tapahtuma_id | paikka_id | alkaad(aika_id) | loppuu(aika_id)

Vai onko tuo jo liioittelua normalisoinnissa?

Mutta mimmosella kyselyllä saan sitten tapahtumat jotka alkaa vaikkapa 2.3.2007 jälkeen sekä loppuu ennen 27.3.2007?

5

605

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • --------

      Ja muutenkin otetaan vinkkejä miten tuo oikeaoppisesti kuuluisi tehdä.

      • normalisoida

        Mielestäni suunnitelma yksi ihan hyvä. Riippuen mitä infoa tapahtumiin liittyy, eli jos ihan keraluontoisia, voisi erillisen tapahtumataulunkin jätää pois.


      • --------
        normalisoida kirjoitti:

        Mielestäni suunnitelma yksi ihan hyvä. Riippuen mitä infoa tapahtumiin liittyy, eli jos ihan keraluontoisia, voisi erillisen tapahtumataulunkin jätää pois.

        Kiitoksia vastauksesta, sama tapahtuma saattaa toistua useastikin eriaikoina ja paikoissa. Tässä tän hetkist tietoa paljon dataa noissa tauluissa on jotta saa käsityksen paljon noita toistoja onpi.

        Tapahtumat: 3458kpl
        Tapahtuma: 206kpl
        Paikka: 187kpl

        Kokeilimpa huvikseni tehdä seuraavanlaisen taulun
        Ajat
        aika_id | alkaa | loppuu

        Jolloin erillaisia tietoja tuli
        2669kpl

        Mutta taitaa tuo ensinmäinen suunnitelma olla yhä se parhain?

        Mistäs löytyisi kunnon tietoa normalisoinnista?
        Googlella kyl yritin mut eipä pahemmin mitään löytynyt, kaik semmosia ylimalkasia ja perusteit.


    • Nyksy

      Toi suunnitelma 1 on ihan hyvä... se alkamis ja loppumisaika kannattaa tehdä timestampilla jos haluut esim minuuttien tarkkuudella tai sitten jos päivän tarkkuus riittää niin määrität sen alkamisen ja loppumisen alkioiden tyypiksi päivämäärän. Jälkimmäisellä tavalla myöskin tietyn päivän jälkeen tapahtuneet asiat on helppo hakea perus kyselyillä... esimerkiksi näin "select *; from tapahtumat; where alkaa > 2-3-2007 and loppuu < 27-3-2007;" Syntaksi sitten vaihtelee tietokanta ohjelmittain mutta periaate tosta varmasti selviää... :)

      • --------

        Kiitoksia vastauksest. Juu nuo alkamis ja loppumis ajat ovat datetime tyyppisiä joilla toimii myös nuo aikajutut.

        Tietokantana on MySQL 5


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Milloin viimeksi näit ikäväsi kohteen?

      Oliko helppo tunnistaa hänet? Millaisia tunteita tuo näkeminen herätti sinussa?
      Ikävä
      69
      1305
    2. En tiedä..

      Yhtään minkälainen miesmaku sinulla on. itse arvioin sinua moneenkin otteeseen ja joka kerta päädyin samaan lopputulokse
      Ikävä
      106
      1217
    3. Suhde asiaa

      Miksi et halua suhdetta kanssani?
      Ikävä
      113
      1155
    4. Kirjoita nainen meistä jotain tänne

      tai minusta, ihan mitä haluat. Niinkin voi kirjoittaa, etteivät muut tunnista, esim. meidän kahdenkeskisistä jutuista. K
      Ikävä
      73
      1070
    5. Paras olisi vain unohtaa

      Tuleekohan tähän meidän tilanteeseen ikinä mitään selvyyttä. Epätoivo iskee taas, enkä jaksaisi enää odottaa. Kohta lop
      Ikävä
      56
      861
    6. IS viikonloppu 18-19.5.2024.

      Laatija Toni Pitkälä on itse laatinut ja kuvittanut 3- arvoista ristikkonsa. Nihkeästi tuntuu löytyvän ensimmäisiä var
      Sanaristikot
      75
      751
    7. Oliko vähä sometettu taas vai?

      Tuli aiva liika nopiaa traktorin perä vastahan. https://www.iltalehti.fi/kotimaa/a/2b3857b3-f2c6-424e-8051-506c7525223a
      Kauhava
      9
      682
    8. Voisitko laittaa

      Nimesi ensimmäisen ja kaksi viimeistä kirjainta tähän?
      Ikävä
      41
      681
    9. Kristityn megahyökkäys idän palstoilla on kauhistuttava

      Terroristikristityn megahyökkäys joka puolella on kauhistuttava, hänen viesteissään on järjetön määrä vihaa. Hän on idän
      Idän uskonnot
      362
      669
    10. S on minun etunimen kolmas kirjain.

      Mikä sinun etunimen kolmas kirjain on?
      Ikävä
      53
      646
    Aihe