|
| Datediff Fra : Jesper |
Dato : 03-05-06 12:28 |
|
Har revet det meste af håret af nu. hehe
SELECT COUNT(*) AS Antal FROM Person
WHERE Fødtår > #31-12-1981#
AND Indmeldt_Dato <= #30-09-2005#
Giver alle medlemmer født fra 82 og op, og som er meldt ind før 30-09-2005
Men nu skal jeg samtidig checke på om man har været medlem i mere end 4 mdr.
Dvs. at jeg har også en Udmeldt_Dato, eller null hvis stadig medlem.
Hvordan hulen kan jeg gøre det i sql strengen....
Jesper
| |
Lars Hoffmann (03-05-2006)
| Kommentar Fra : Lars Hoffmann |
Dato : 03-05-06 15:56 |
|
Jesper wrote:
> Har revet det meste af håret af nu. hehe
>
> SELECT COUNT(*) AS Antal FROM Person
> WHERE Fødtår > #31-12-1981#
> AND Indmeldt_Dato <= #30-09-2005#
>
> Giver alle medlemmer født fra 82 og op, og som er meldt ind før 30-09-2005
>
> Men nu skal jeg samtidig checke på om man har været medlem i mere end 4 mdr.
> Dvs. at jeg har også en Udmeldt_Dato, eller null hvis stadig medlem.
er det ikke bare at tilføje:
AND datediff(Indmeldt_Dato,date,'YYYY') > 4
AND isnull(Udmeldt_Dato)
(jeg går ud fra at det er Access der er tale om)
Med venlig hilsen
Lars Hoffmann
| |
Jesper (03-05-2006)
| Kommentar Fra : Jesper |
Dato : 03-05-06 16:13 |
|
Syntes bare jeg har prøvet alt med datediff uden held. Smutter til
aftensmaden og kigger på det igen derefter.
AND datediff(Indmeldt_Dato,date,'YYYY') > 4
AND isnull(Udmeldt_Dato)
| |
Jesper (03-05-2006)
| Kommentar Fra : Jesper |
Dato : 03-05-06 17:30 |
|
SELECT * FROM Person WHERE datediff(Indmeldt_Dato,date,'YYYY') > 5
Microsoft OLE DB Provider for ODBC Drivers- Error '80040e10'
[Microsoft][ODBC Microsoft Access-driver] Der er for få parametre. Der var
ventet 1.
Hvis den virkede, burde den liste alle som har været indmeldt i mere end 5
år.
Jeg kan dog se på w3school at datediff skal se sådan ud.
DATEDIFF(d,date1,date2) Used to perform date calculations
Så hvis jeg laver min query som
SELECT * FROM Person WHERE datediff('YYYY',Indmeldt_Dato,date) > 5
giver det samme fejl.
Jesper.
"Lars Hoffmann" <lars@intercambiodvd.com> skrev i en meddelelse
news:1146668184.296210.201510@i39g2000cwa.googlegroups.com...
Jesper wrote:
> Har revet det meste af håret af nu. hehe
>
> SELECT COUNT(*) AS Antal FROM Person
> WHERE Fødtår > #31-12-1981#
> AND Indmeldt_Dato <= #30-09-2005#
>
> Giver alle medlemmer født fra 82 og op, og som er meldt ind før 30-09-2005
>
> Men nu skal jeg samtidig checke på om man har været medlem i mere end 4
> mdr.
> Dvs. at jeg har også en Udmeldt_Dato, eller null hvis stadig medlem.
er det ikke bare at tilføje:
AND datediff(Indmeldt_Dato,date,'YYYY') > 4
AND isnull(Udmeldt_Dato)
(jeg går ud fra at det er Access der er tale om)
Med venlig hilsen
Lars Hoffmann
| |
Thomas Smedebøl (03-05-2006)
| Kommentar Fra : Thomas Smedebøl |
Dato : 03-05-06 18:01 |
|
> AND datediff(Indmeldt_Dato,date,'YYYY') > 4
> AND isnull(Udmeldt_Dato)
hvis det er måneder du vil undersøge med datediff skal du ikke bruge
yyyy! det er nemlig år!
mvh thomas
| |
Jesper (03-05-2006)
| Kommentar Fra : Jesper |
Dato : 03-05-06 19:47 |
|
Det er jeg klar over. Holdt den bare i år da Lars kom med eks med år.
"Thomas Smedebøl" <whisdow@hotmail.com> skrev i en meddelelse
news:4458e1dd$0$15793$14726298@news.sunsite.dk...
>> AND datediff(Indmeldt_Dato,date,'YYYY') > 4
>> AND isnull(Udmeldt_Dato)
>
> hvis det er måneder du vil undersøge med datediff skal du ikke bruge yyyy!
> det er nemlig år!
>
> mvh thomas
| |
Jørn Andersen (03-05-2006)
| Kommentar Fra : Jørn Andersen |
Dato : 03-05-06 22:49 |
|
On 3 May 2006 07:56:24 -0700, "Lars Hoffmann"
<lars@intercambiodvd.com> wrote:
>er det ikke bare at tilføje:
>
>AND datediff(Indmeldt_Dato,date,'YYYY') > 4
>AND isnull(Udmeldt_Dato)
Bortset fra at syntaksen er forkert:
Eksempel fra VBScript-dokumentationen:
DiffADate = "Days from today: " & DateDiff("d", Now, theDate)
- der skal mao. byttes rundt på parametrene.
Lidt mere detaljeret:
DateDiff(interval, date1, date2 [,firstdayofweek[, firstweekofyear]])
<snip>
The interval argument can have the following values:
Setting Description
yyyy Year
q Quarter
m Month
y Day of year
d Day
w Weekday
ww Week of year
h Hour
n Minute
s Second
Good luck!
--
Jørn Andersen,
Brønshøj
| |
Lars Hoffmann (04-05-2006)
| Kommentar Fra : Lars Hoffmann |
Dato : 04-05-06 07:54 |
|
Jesper wrote:
> Jeg kan dog se på w3school at datediff skal se sådan ud.
> DATEDIFF(d,date1,date2) Used to perform date calculations
Ja selvfølgelig, det var smutter.
> Så hvis jeg laver min query som
> SELECT * FROM Person WHERE datediff('YYYY',Indmeldt_Dato,date) > 5
> giver det samme fejl.
Har du Null i nogle af dine indmeldt_date?
hvis du har null kan du gøre følgende:
SELECT *
FROM Person
WHERE
iif(isnull(Indmeldt_Dato,0,datediff('YYYY',Indmeldt_Dato,date()))) > 5
Med venlig hilsen
Lars Hoffmann
PS, vil du ikke være så venlig at svare under det du svarer på?
| |
Jesper (04-05-2006)
| Kommentar Fra : Jesper |
Dato : 04-05-06 14:11 |
|
"Lars Hoffmann" <lars@intercambiodvd.com> skrev i en meddelelse
news:1146725630.138980.8620@i39g2000cwa.googlegroups.com...
Jesper wrote:
> Jeg kan dog se på w3school at datediff skal se sådan ud.
> DATEDIFF(d,date1,date2) Used to perform date calculations
Ja selvfølgelig, det var smutter.
> Så hvis jeg laver min query som
> SELECT * FROM Person WHERE datediff('YYYY',Indmeldt_Dato,date) > 5
> giver det samme fejl.
Har du Null i nogle af dine indmeldt_date?
hvis du har null kan du gøre følgende:
SELECT *
FROM Person
WHERE
iif(isnull(Indmeldt_Dato,0,datediff('YYYY',Indmeldt_Dato,date()))) > 5
-------------------------------------------
Det ser meget fornuftigt ud, men jeg kan ikke få det til at køre.
Har fundet en anden løsning i 2 linier i stedet.
Tak for hjælpen....
| |
Christian M. Nielsen (12-05-2006)
| Kommentar Fra : Christian M. Nielsen |
Dato : 12-05-06 07:37 |
|
"Jesper" <oz5@pc.dk> skrev i en meddelelse
news:4459fd69$0$939$edfadb0f@dread14.news.tele.dk...
>
> Det ser meget fornuftigt ud, men jeg kan ikke få det til at køre.
> Har fundet en anden løsning i 2 linier i stedet.
Hej Jesper.
Det er god skik at vise hvad man har fundet ud af, så kan andre også få gavn
af det hvis de står med et lignende problem
--
Mvh / Regards
-=< Christian >=-
What capital has 164 letters in its name? See my web page to find out.
http://www.cmnielsen.dk
The scary thing about looking for truth is that you might find it.
| |
|
|