Avatar billede jobdollas Nybegynder
15. juni 2005 - 09:32 Der er 10 kommentarer

between men dato er i felter

I min database er dag, måned og år i hver deres felt.

Jeg vil så gerne lave en

select * from basket where (qyear/qmonth/qday) = '1/5/2004'

Hvordan gør man det?
Avatar billede busschou Praktikant
15. juni 2005 - 09:34 #1
select * from basket where qyear = 2004 and qmonth = 5 and qday = 1
Avatar billede jobdollas Nybegynder
15. juni 2005 - 09:35 #2
hvordan vil du så lave en between på det ???
Avatar billede busschou Praktikant
15. juni 2005 - 09:43 #3
between er jo ikke nem at lave på een dato ;o)
Hmm men kan godt se problemet så, men hvis du har to datoer må du vel kunne lave between på felterne
dato1 = 1/5/2004, dato2 = 17/9/2006
må findes ved
Select * from basket where (qyear between 2004 and 2006) and  (qmonth between 5 and 9) and  (qday between 1 and 17)
Avatar billede jobdollas Nybegynder
15. juni 2005 - 09:44 #4
Ahh, ja, det kan jeg jo prøve...

Smart ide.... Det prøver jeg lige.
Avatar billede busschou Praktikant
15. juni 2005 - 09:48 #5
jeg ved ikke om det er det smarteste, det er muligt at mysql kan evaluere felterne samlet som dato...men er ikke sikker..min tanke utestet og uvidende om den virker
select * from basket where date(qyear-qmonth-qday) between date(2006-09-17) and date(2004-05-01)
--
Men første eksempel burde i hvert fald virke :o)
Avatar billede jobdollas Nybegynder
15. juni 2005 - 09:49 #6
JEg har prøvet det andet du skriver, altså det første du skrev og det virker, så smid lige et svar, så sender jeg point og et MANGE TAK til dig.
Avatar billede gonza.dk Nybegynder
15. juni 2005 - 09:59 #7
hvad så med f.eks. d. 26/3 2005
Den dato burde da ikke blive vist udfra eksempel1, da måneden ikke er imellem 5 og 9... og dagen er heller ikke indenfor kriterierne...

ved ikke om eksempel2 vil virke ;-)
Avatar billede haunted Nybegynder
15. juni 2005 - 10:15 #8
Det vil det ikke... da man bruger AND i statementet.
Avatar billede busschou Praktikant
15. juni 2005 - 10:17 #9
jobdollas >> gonza.dk har vist en god pointe :o)... så mon ikke det "ikke" virker alligevel.. var bare lidt for hurtig i tankegangen
Avatar billede jobdollas Nybegynder
15. juni 2005 - 10:29 #10
ja, jeg ahr også fundet ud af at hvis måneden skifter, f.eks:

Select count(*) as antal from basket where (partystartyear between 2005 and 2005) and (datemonthtal between 6 and 7) and (partystartday between 27 and 3)

Så vil den ikke...

pis og lort...

er der ikke en måde man kan skabe et convert eller noget... ligesom i mssql
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