/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Datediff problem
Fra : Thomas Brejner


Dato : 27-05-04 19:50

Hej NG

Jeg skal have talt alle de poster som har siteid nr 1 og hvor tid er lig med
aktuel dato. Derfor har jeg lavet følgende sætning:

strSQL = "SELECT COUNT(*) as antal FROM stats where siteID =" &
request.querystring("siteID") & " and DateDiff('d', tid, Now()) =" & Date &
""

Men datediff funktion fungere vist ikke optimalt, der kommer ingen fejlmedd.
Men den tæller ikke de poster hvor tid er lig med aktuel, den skal kun
sortere efter datoen, altså ikke tidspunkt. I databasen ligger tid i et
tekstfelt som indeholder datoen og ikke tidspunkt eller noget andet.
Håber i har forstået problemet og kan hjælpe med at løse det.

Mvh Thomas Brejner



 
 
Mikoangelo (27-05-2004)
Kommentar
Fra : Mikoangelo


Dato : 27-05-04 20:02

[On to, 27 maj 2004 18:50:07 GMT, "Thomas Brejner" wrote (link:
<news:c95d93$a5c$1@news.cybercity.dk>)]:

> Hej NG
>
> Jeg skal have talt alle de poster som har siteid nr 1 og hvor tid
> er lig med aktuel dato. Derfor har jeg lavet følgende sætning:
>
> strSQL = "SELECT COUNT(*) as antal FROM stats where siteID =" &
> request.querystring("siteID") & " and DateDiff('d', tid, Now()) ="
> & Date & ""
>
> Men datediff funktion fungere vist ikke optimalt, der kommer ingen
> fejlmedd. Men den tæller ikke de poster hvor tid er lig med
> aktuel, den skal kun sortere efter datoen, altså ikke tidspunkt. I
> databasen ligger tid i et tekstfelt som indeholder datoen og ikke
> tidspunkt eller noget andet. Håber i har forstået problemet og kan
> hjælpe med at løse det.
>
> Mvh Thomas Brejner
>
>
>

DateDiff returnerer *forskellen* på to datoer, mens feltet, du tjekker
med, er et datofelt.
Den anden betingelse skal være "... and dato = " & Date & "", hvor dato
er navnet på det felt, som indeholder datoen.
Er det svar nok?


--
Mikoangelo - webmaster of
http://harrypotter.lk-data.net
Scrambled email (ROT-13):
uneelcbggre [on] yx [hyphen] qngn [spot] qx

Mikoangelo (27-05-2004)
Kommentar
Fra : Mikoangelo


Dato : 27-05-04 20:09

[On to, 27 maj 2004 19:01:33 GMT, "Mikoangelo" wrote (link:
<news:Xns94F6D5DBAEF90uneelcbggreyxqngnqx@194.255.237.194>)]:
[deletia]
> DateDiff returnerer *forskellen* på to datoer, mens feltet, du
> tjekker med, er et datofelt.
> Den anden betingelse skal være "... and dato = " & Date & "", hvor
> dato er navnet på det felt, som indeholder datoen.
> Er det svar nok?
>
>

Jeg vrøvler...
Det du gør, er at du tjekker at forskellen i dage mellem en variabel
ved navn tid og nu, er den samme som Datoen i dag, dvs. at tjekket
bliver:
Der er to dage mellem i forgårs og i dag.
2
er lig med
2 =
dags dato
2 = 27-05/04
Og det kan jo *aldrig* være sandt.

BTW: Det kan ofte være en god idé at udskrive SQL-sætningen på skærmen.
Se http://www.asp-faq.dk/article/?id=7 for at se, hvordan du gør det.


--
Mikoangelo - webmaster of
http://harrypotter.lk-data.net
Scrambled email (ROT-13):
uneelcbggre [on] yx [hyphen] qngn [spot] qx

Thomas Brejner (27-05-2004)
Kommentar
Fra : Thomas Brejner


Dato : 27-05-04 20:10

Nu ser min sætning sådan ud, men virker stadig ikke.....

strSQL = "SELECT COUNT(*) as antal FROM stats where siteID =" &
request.querystring("siteID") & " and tid =" & Date & ""

Håber i kan se hvad der er galt.
Mvh Thomas
> Den anden betingelse skal være "... and dato = " & Date & "", hvor dato
> er navnet på det felt, som indeholder datoen.
> Er det svar nok?
>
>
> --
> Mikoangelo - webmaster of
> http://harrypotter.lk-data.net
> Scrambled email (ROT-13):
> uneelcbggre [on] yx [hyphen] qngn [spot] qx



Christian Epstein (27-05-2004)
Kommentar
Fra : Christian Epstein


Dato : 27-05-04 21:49

Thomas Brejner wrote:
> Nu ser min sætning sådan ud, men virker stadig ikke.....
>
> strSQL = "SELECT COUNT(*) as antal FROM stats where siteID =" &
> request.querystring("siteID") & " and tid =" & Date & ""
>
> Håber i kan se hvad der er galt.
> Mvh Thomas
>
Du skal være sikker på at tid feltet i databasen er af samme format som
den dato variabel du sammenligner med fx. går det ikke at sammenligne
'25 dec' med '25.12.2003 17:12' selvom der er ment den samme 25 december...

/Christian

Jens Gyldenkærne Cla~ (27-05-2004)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 27-05-04 22:04

Christian Epstein skrev:

> Du skal være sikker på at tid feltet i databasen er af samme
> format som den dato variabel du sammenligner med fx. går det
> ikke at sammenligne '25 dec' med '25.12.2003 17:12' selvom der
> er ment den samme 25 december...

Du har ret - og det betyder at den sammenligningstype som Thomas
benyttede i eksemplet (... " and tid = " & Date) i praksis ikke er
brugbar.

DateDiff, som han havde fat i i første omgang, er langt bedre fordi
man ikke er afhængig af datoformatet. Man skal bare ikke
sammenligne uddata fra DateDiff med en dato - funktionen leverer et
tal (et antal dage, minutter, sekunder, uger, år etc.) og derfor
skal man også sammenligne med et tal.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Jens Gyldenkærne Cla~ (27-05-2004)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 27-05-04 20:08

Thomas Brejner skrev:

> strSQL = "SELECT COUNT(*) as antal FROM stats where siteID ="
> & request.querystring("siteID") & " and DateDiff('d', tid,
> Now()) =" & Date & ""

Hvad forventer du at DateDiff-udtrykket skal returnere? (prøv evt.
en SELECT DateDiff('d', tid, Now()) as ddiff FROM stats)

> Men datediff funktion fungere vist ikke optimalt, der kommer
> ingen fejlmedd.

Jeg vil tro det hjælper hvis du erstatter Date med 0 i udtrykket.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Thomas Brejner (27-05-2004)
Kommentar
Fra : Thomas Brejner


Dato : 27-05-04 20:18

Ja, det hjalp at udskift det med 0. Tak for de hurtige svar.
Mvh Thomas
> Jeg vil tro det hjælper hvis du erstatter Date med 0 i udtrykket.
> --
> Jens Gyldenkærne Clausen
> Svar venligst under det du citerer, og citer kun det der er
> nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
> hvordan på http://usenet.dk/netikette/citatteknik.html



Jens Gyldenkærne Cla~ (27-05-2004)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 27-05-04 20:17

Thomas Brejner skrev:

> Ja, det hjalp at udskift det med 0. Tak for de hurtige svar.

Velbekomme. Hvis du vil gøre lidt til gengæld, må du gerne læse min
signatur.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408847
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste