Hallo allen,
Ik loop al een tijdje mijn hoofd te breken over het volgende. Ik heb een tabel waar ik mijn elektra verbruik in opsla. Ik heb als test wat willekeurige waardes toegevoegd:
Nu wil ik per dag laten weergeven wat er gebruikt is. Dus op 26-12-2015 moet dit 30 zijn voor het laag_tarief en op 27-12-2015 moet dit 10 zijn voor het laag_tarief (40-30).
Ik had de volgende functie (gejat van internet):
Maar dit gaf als resultaat:
Dus deze telde wel, maar nam de waarde niet per dag. Logisch want dat staat er ook niet bij. Ik probeerde er zelf een GROUP BY DATE('time') bij te zetten maar dat werkte niet. Het is vast heel simpel maar ik zie even door de bomen het bos niet meer.
Het liefst zal ik de uitkomsten willen hebben zoals dit:
Later wil ik ook totalen per maand weergeven maar dit moet makkelijk aan te passen zijn als de dag-totalen maar werken.
Hopelijk kan iemand me op weg helpen! Dank!
Ik loop al een tijdje mijn hoofd te breken over het volgende. Ik heb een tabel waar ik mijn elektra verbruik in opsla. Ik heb als test wat willekeurige waardes toegevoegd:
Code:
+----+---------------------+------------------+------------------+------------------+------------------+-----------------+-----------------+-----+
| id | time | gebr_laag_tarief | gebr_hoog_tarief | leve_laag_tarief | leve_hoog_tarief | huidig_verbruik | huidig_levering | gas |
+----+---------------------+------------------+------------------+------------------+------------------+-----------------+-----------------+-----+
| 1 | 2015-12-22 17:46:33 | 0 | 0 | 0 | 0 | 20 | 0 | 0 |
| 2 | 2015-12-22 17:46:38 | 0 | 0 | 0 | 0 | 30 | 0 | 0 |
| 3 | 2015-12-22 17:46:42 | 0 | 0 | 0 | 0 | 40 | 0 | 0 |
| 4 | 2015-12-22 17:46:45 | 0 | 0 | 0 | 0 | 50 | 0 | 0 |
| 5 | 2015-12-22 17:46:52 | 0 | 0 | 0 | 0 | 60 | 0 | 0 |
| 6 | 2015-12-22 17:46:56 | 0 | 0 | 0 | 0 | 70 | 0 | 0 |
| 7 | 2015-12-22 17:47:00 | 0 | 0 | 0 | 0 | 80 | 0 | 0 |
| 8 | 2015-12-22 17:47:02 | 0 | 0 | 0 | 0 | 90 | 0 | 0 |
| 9 | 2015-12-22 17:47:06 | 0 | 0 | 0 | 0 | 100 | 0 | 0 |
| 10 | 2015-12-22 17:47:11 | 0 | 0 | 0 | 0 | 95 | 0 | 0 |
| 11 | 2015-12-22 17:47:19 | 0 | 0 | 0 | 0 | 85 | 0 | 0 |
| 12 | 2015-12-22 17:47:22 | 0 | 0 | 0 | 0 | 75 | 0 | 0 |
| 13 | 2015-12-22 17:47:24 | 0 | 0 | 0 | 0 | 65 | 0 | 0 |
| 14 | 2015-12-22 17:47:27 | 0 | 0 | 0 | 0 | 55 | 0 | 0 |
| 15 | 2015-12-26 18:08:50 | 0 | 0 | 0 | 0 | 35 | 0 | 0 |
| 16 | 2015-12-26 21:37:57 | 10 | 20 | 0 | 0 | 0 | 0 | 0 |
| 17 | 2015-12-26 21:38:06 | 20 | 40 | 0 | 0 | 0 | 0 | 0 |
| 18 | 2015-12-26 21:38:14 | 25 | 45 | 0 | 0 | 0 | 0 | 0 |
| 19 | 2015-12-26 21:38:22 | 30 | 50 | 0 | 0 | 0 | 0 | 0 |
| 20 | 2015-12-27 14:47:27 | 31 | 52 | 0 | 0 | 10 | 0 | 0 |
| 21 | 2015-12-27 14:47:40 | 36 | 53 | 0 | 0 | 15 | 0 | 0 |
| 22 | 2015-12-27 14:47:49 | 37 | 53 | 0 | 0 | 5 | 0 | 0 |
| 23 | 2015-12-27 14:48:00 | 37 | 54 | 0 | 0 | 6 | 0 | 0 |
| 24 | 2015-12-27 14:48:15 | 40 | 55 | 0 | 0 | 30 | 0 | 0 |
+----+---------------------+------------------+------------------+------------------+------------------+-----------------+-----------------+-----+
Nu wil ik per dag laten weergeven wat er gebruikt is. Dus op 26-12-2015 moet dit 30 zijn voor het laag_tarief en op 27-12-2015 moet dit 10 zijn voor het laag_tarief (40-30).
Ik had de volgende functie (gejat van internet):
PHP:
SELECT Sub1.JustDate, (b.gebr_laag_tarief - a.gebr_laag_tarief) AS Verschil
-> FROM (
-> SELECT DATE_FORMAT(FROM_UNIXTIME(time), '%Y-%m-%d') AS JustDate, MIN(time) AS MinTimeStamp, MAX(time) AS MaxTimeStamp
-> FROM meetwaarden
-> GROUP BY JustDate) Sub1
-> INNER JOIN meetwaarden a on Sub1.MinTimeStamp = a.time
-> INNER JOIN meetwaarden b on Sub1.MaxTimeStamp = b.time
-> ;
Code:
+----------+----------+
| JustDate | Verschil |
+----------+----------+
| NULL | 40 |
+----------+----------+
Het liefst zal ik de uitkomsten willen hebben zoals dit:
Code:
+----------+----------+
| JustDate | Verschil |
+----------+----------+
| 25 | 0 |
+----------+----------+
| 26 | 30 |
+----------+----------+
| 27 | 10 |
+----------+----------+
Later wil ik ook totalen per maand weergeven maar dit moet makkelijk aan te passen zijn als de dag-totalen maar werken.
Hopelijk kan iemand me op weg helpen! Dank!
Laatst bewerkt: