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?
Normalisointi?
5
683
Vastaukset
- --------
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
- 511673
- 621612
SDP:n lyhyt selviytymisopas
1. Komitea on vastaus, oli kysymys mikä tahansa Jos maailma on muuttumassa tai jossain palaa, demari ei hätiköi. Ensin p101178- 60981
- 49954
Mitä se olisi
Jos sinä mies saisit sanoa kaivatullesi mitä vain juuri nyt. Ilman mitään seuraamuksia yms. Niin mitä sanoisit?41765Nanna Karalahti :Paljastus bisneksistä Jere Karalahden kanssa!
Ottanut yhteyttä seiskalehden toimittajaan ja kertonut totuuden yhteisestä Herotreeni-nimisestä verkkovalmenuksesta.118627Toivoisitko
Toivoisitko, että kaivattusi olisi introvertimpi tai extrovertimpi? Itsenäinen tai tarvitsisi enemmän apua/sinua? Osoit86620Sotekeskus
Aloite on hyvä, kiitokset siitä. Mutta jos olette yhtään seuranneet hyvinvointialueen kokouksia niin sehän on jo nuijit32597- 38556