Avatar billede mccookie Seniormester
07. december 2015 - 13:15 Der er 1 kommentar

Subquery

Hej,

Jeg har en tabel i min DB, som indeholder 3 data værdier, som alle kommer fra min solcelleinverter.

Eksempel på data:

ID Total PAC  Time                Option (Er posten læst)
1  30868 3211 2015-10-27 13:20:02

Jeg får en ny linje hvert minut, da jeg vil lave et produktionsview på sigt, men i første omgang ville jeg blot lave en dag til dag visning.

En gang om dagen vil jeg gerne køre et script, som udvælger en unik post pr. dag og samtidigt henter TOTAL værdien. Her kan jo være flere dage, og med flere poster pr. dag - Men jeg vil kun have den første.

Årsagen til denne kørsel, skyldtes at sikre data - Hvis ikke den bliver afviklet en dag.

Jeg har forsøgt mig med en subquery - Men vi er ikke hele enige.... Kan en hjælpe mig videre?

SELECT  total from solceller_log where distinct(date_format(timestample,'%d-%m-%Y')) in select distinct(date_format(timestample,'%d-%m-%Y')) as dato  FROM `solceller_log`
Avatar billede kjulius Novice
01. januar 2016 - 01:18 #1
Altså, jeg forstår ikke helt dit spørgsmål og heller ikke helt indholdet af tabellen. Hvad er Total et udtryk for? Hvad indeholder PAC feltet?

ID = 1
Total = 30868
PAC = 3211
Time = 2015-10-27 13:20:02

Hvis det er rigtigt forstået og PAC feltet er irrelevant, ville jeg nok forsøge mig med noget lign. dette:

SELECT Date_Format(Time,'%d-%m-%Y) AS Dato, MIN(Total) AS MinTotal, AVG(Total) AS GnsTotal, MAX(Total) AS MaxTotal
FROM solceller_log
GROUP BY Date_Format(Time,'%d-%m-%Y)

For hver dag vil den query returnere den mindste registrerede total, gennemsnittet af de registrerede total værdier og den største registrerede total værdi.

Det er selvfølgelig ikke helt det samme som bare at tage en tilfældig værdi, men for mig virker det mere logisk at udvælge en disse grupperingsfunktionsværdier.

Jeg er ikke helt inde i MySQL syntax mv. og har ikke testet ovenstående, så du må selv prøve dig lidt frem.
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