Avatar billede tdh1309 Juniormester
22. juli 2011 - 06:38 Der er 3 kommentarer og
1 løsning

Design af tabel, struktur af år og måned!

Hej
Jeg skal oprette en tabel hvor der skal være nogle månedlige opsummeringer.
I forbindelse med det betragter jeg og en af mine kollegaer situationen lidt forskelligt, nedenfor er to forskellige løsninger.
Eksempel:
RowID    SumDate              MonthlySum
1    2011-05-31      3
2    2011-06-30      9
3    2011-07-31      5

RowID    SumYear    SumMonth      MonthlySum
1    2011    05      3
2    2011    06      9
3    2011    07      5
Jeg mener det er hensigts mæssigt at anvende et felt med typen date, til at definere hvilken måned data vedrører (hvor man så kan sige at 'day-delen' er overflødig), men kollega foreslår den nederste model hvor der er en specifik række til hhv. år og måned.
Hvilken løsning er bedst (læs mest design mæssig korrekt)?
Det jeg savner er nogle gode saglige forklaringer/ argumenter for valg af de to løsningsmodeller

Løsningen skal implementeres på DB2, men det er jo ikke så interessant i denne sammenhæng.
Avatar billede tdh1309 Juniormester
22. juli 2011 - 08:08 #1
Hmm, har drøftet det med en anden kolega og det ender med:
RowID    SumYear    SumMonth      MonthlySum


Jeg vil dog stadig gerne høre andres holdning, så kom endelig med input!
Avatar billede arne_v Ekspert
22. juli 2011 - 16:39 #2
Jeg ville vaelge den foerste loesning.

Databaser har DATETIME typer af en grund.

Det er langt nemmere at teste paa intervaller med en DATETIME end med 3 (eller 2) INTEGER.

Og der er normalt funktion til at hente de 3 dele ud af en DATETIME.
Avatar billede tdh1309 Juniormester
23. juli 2011 - 10:36 #3
Det var også mit argument, men det er ikke altid man får ret!
Tak for input (kom med et svar)

/Thomas
Avatar billede arne_v Ekspert
23. juli 2011 - 17:05 #4
svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester