Avatar billede steen_hansen Forsker
22. maj 2022 - 20:27 Der er 4 kommentarer

Find den forrige record fra en bruger, som er én blandt andre i samme tabel

Jeg har nogle brugere, som indtaster én værdi i MySQL hver morgen.

Jeg vil gerne have, at jeg kan hive gårsdagens værdi og sammenligne stigning / fald.

Hvordan man beregner det, skal jeg nok selv klare. Men jeg vil gerne have, at brugeren steen_hansen (opfindsomt brugernavn) indtaster sin værdi om morgen, for derefter at blive redirected til en side, hvor han kan se sine værdier ud for de enkelte dage.

Det kører jeg gennem en løkke, så alle dagene med data bliver listet over hinanden:

If Not RS.EOF Then
    Do Until RS.EOF
        ......   
    RS.MoveNext
    Loop
End If

Ikke noget problem dér. Men problemet består i KUN at hive gårsdagens data frem, og så beregne differencen mellem gårsdagens værdi og den indeværende dags værdi.

Alle brugere smider deres værdi ned i samme tabel. Så der skal noget

WHERE username = '" & SQLEncode(Session("username")) & "' ORDER BY ID DESC"

ind.

Det er kun én kolonne fra databasen, som jeg benytter til beregning af stigning / fald af enheder og hvor meget det udgør i %.

Jeg fandt noget på stackoverflow. Men det er ikke ligetil, synes jeg. Håber der er en, der kan hjælpe.

Jeg håber meningen er forstået. Ellers spørg :)
Avatar billede steen_hansen Forsker
22. maj 2022 - 20:30 #1
Fra stackoverflow:

https://stackoverflow.com/questions/18273215/how-to-get-previous-record-value-from-mysql-query

SELECT col1, col2, @a := @a + col2 AS col3 FROM test JOIN (SELECT @a := 0) t ORDER BY col1 DESC;

Her bliver der arbejdet med to kolonner.
Avatar billede arne_v Ekspert
22. maj 2022 - 20:40 #2
WHERE username = '" & SQLEncode(Session("username")) & "' ORDER BY ID DESC LIMIT 1"

eller

WHERE username = '" & SQLEncode(Session("username")) & "' ORDER BY ID DESC LIMIT 2"

??
Avatar billede bsn Forsker
25. maj 2022 - 08:27 #3
RS.MovePrevious måske...
Avatar billede steen_hansen Forsker
26. maj 2022 - 22:35 #4
arne_v / bsn: Jeg har ikke glemt Jer. Men jeg er stødt på nogle uhensigtmæssigheder. Jeg må omrokere og vender tilbage, når det er på plads. Foreløbigt tak.
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

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