Avatar billede rickie Juniormester
14. oktober 2004 - 09:45 Der er 9 kommentarer og
1 løsning

'Select' forrige værdi udfra dato

Hej eksperter,

Jeg har følgende kode!
Som der er nu hentes den allerførste værdi i databasen frem, men jeg vil gerne at den, udfra dato, henter den forrige post.

<%Set RecSet = Conn.Execute("Select * From Match where MatchDate <= date() and MatchType = 'matchown'")%>

På forhånd tak!
Avatar billede hiks Nybegynder
14. oktober 2004 - 09:58 #1
er det post nr. to i dit recordset du gerne vil have ud? for det kan du gøre i din kodning, det bedste er nok at lave en løkke:

<%

dim i

i= 1

If RecSet.eof = false
    While RecSet.eof = False

        If i = 2 then
                'din ønskede post
                'evt. Exit Sub eller Exit Function her!
        Else
                'der er ikke to poster i rs'et
        End If

        i = i + 1
        RecSet.Movenext
    Wend
Else
    Response.Write "Ingen poster i udtrækket!"

End if
%>

Det er lidt høkermetode men det burde virke!

/hiks
Avatar billede hiks Nybegynder
14. oktober 2004 - 10:01 #2
du kan også bruge en:

<%

RecSet.Move 2 '2 er positionen i rs'et

%>

men husk at teste på hvormange poster der er i udtrækket!

/hiks
Avatar billede rickie Juniormester
14. oktober 2004 - 11:29 #3
Det jeg vil er fölgende:

I databasen er der kampe der er spillet og kampe der skal spilles.
Lad os udgå fra at der er spillet 3 kampe.

Jeg vil få frem den forrige kamp, i dette tilfälde kamp 2.
Der kan udgås fra dato() idet der er dato for spillet kamp.

Det bliver rent oversat noget i stil med dagens dato og kampen der var sidst.

!-)
Avatar billede hiks Nybegynder
14. oktober 2004 - 12:53 #4
<%
dim SQL

SQL = "SELECT * FROM Match WHERE MatchDate <= date() AND MatchType = 'matchown' " & _
      "ORDER BY MatchDate DESC;"
Set RecSet = Conn.Execute(SQL)

If RecSet.EOF = False Then
      Response.Write "Ingen poster i udtrækket!"
Else
      RecSet.MoveFirst
      RecSet.Move 1
      Response.Write RecSet("MatchDate")
End If

%>
Avatar billede rickie Juniormester
14. oktober 2004 - 13:20 #5
Det er ikke den første post som der skal udgås fra men den post som ligger precis bagom date()
Avatar billede hiks Nybegynder
14. oktober 2004 - 13:26 #6
så skal du

RecSet.Move 2

ellers forstår jeg virkelig ikke hvad du mener!

/hiks
Avatar billede rickie Juniormester
14. oktober 2004 - 13:40 #7
Ok prøver igen !-)

Jeg har en tabel (match) med ca. 70 kampe som spilles specifike datoer.
Nu er der spillet 3 kampe og så vil jeg vise resultatet fra forrige kamp.

Er der spillet 3 kampe skal der vises resultatet fra kamp 2.
Er der spillet 5 kampe skal der vises resultatet fra kamp 4
Er der spillet 9 kampe skal der vises resultatet fra kamp 8.

På en eller anden måde, skal der hentes frem den spillede kamp som ligger tættest på dagens dato og vises !-)

Håber at du forstår og tak for at du gider !-)
Avatar billede hiks Nybegynder
14. oktober 2004 - 13:48 #8
men det er jo også det den asp kodning der gør! Specielt den første - du kan jo bare tælle gennemløb i din database og når du når til post nummer to i dit recordset så har du den næstsidste kamp!

/hiks
Avatar billede rickie Juniormester
14. oktober 2004 - 14:53 #9
Ja, det har du jo fuldständig ret i. Jeg tänkte helt forkert og kunne ikke se det.
Mange tak for hjälpen !-)
Avatar billede hiks Nybegynder
14. oktober 2004 - 14:55 #10
no problemo!

kunne heller ikke helt forstå hvad du ellers mente! :o)

/hiks
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
Kurser inden for grundlæggende programmering

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