Avatar billede a330 Nybegynder
12. april 2011 - 19:03 Der er 5 kommentarer og
1 løsning

Vælg værdier og træk værdi fra

Har en tabel som bliver opdateret ca en til to gange om dagen med nye poster. i tabellen er der en værdi som hedder "totalproduktion" og en felt med et timestamp.

Jeg vil gerne kunne vælge ca 20 dages poster og tage værdien i feltet "totalproduktion" på den nyeste post og fratrække værdien på den næstnyeste post's totalproduktion. så jeg ender op med ca 20 dages dags produktion. Samtidig kan der godt være 2 poster på en dag men ønsker kun totalproduktion for en hel dag

Giver det mening, kan ikke lige gennemskue hvordan jeg bære mig ad, er ingen haj på Mysql/php
Avatar billede showsource Seniormester
13. april 2011 - 12:19 #1
Hvad indeholder "totalproduktion" ?
Hvis du blot har et felt med mængde produktion for given periode ville det nok være langt nemmere at håndtere.
Avatar billede a330 Nybegynder
14. april 2011 - 09:24 #2
Feltet er blot en totalproduktion på den pågældende enhed, og det kan desværre ikke laves om, det er hardware producenten som styre det og er blot en tæller.

Totalproduktion er et heltal eg. 17941587
Avatar billede showsource Seniormester
20. april 2011 - 08:38 #3
Jeg er ikke helt med på præcis hvad du gerne vil, men

SELECT * FROM tabel WHERE datofelt > DATE_SUB(CURDATE(), INTERVAL 20 DAY) ORDER BY datofelt DESC

vil hente de rows hvor datoen er større end 20 dage gammel fra i dag

SELECT datofelt, SUM(totalproduktion) as ialt FROM tabel WHERE datofelt > DATE_SUB(CURDATE(), INTERVAL 20 DAY) GROUP BY datofelt DESC

vælger sum for hver dag.

Og et timestamp, er det med tid også, eller kun dato ?
Avatar billede a330 Nybegynder
20. april 2011 - 09:24 #4
beklager fik ikke lige lukkede den men er kommet frem til denne:

SELECT (SELECT SUM(Tot1 + Tot2) FROM mintabel WHERE id=1 AND DATE(AccessTimeStamp) = ADDDATE(CURDATE(), INTERVAL -0 DAY)  ) - (SELECT SUM(Tot1 + Tot2) FROM mintabel WHERE id=1 AND DATE(AccessTimeStamp) = ADDDATE(CURDATE(), INTERVAL -1 DAY) ) AS totalProduktion24hours
Avatar billede showsource Seniormester
20. april 2011 - 15:40 #5
Njahh, man kan jo ikke være hele tiden :O)

husk at lave et svar selv, og accepeter det.
Avatar billede a330 Nybegynder
20. april 2011 - 17:14 #6
Det er lige det...

Men tak for forsøget :-)
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