Ja, ok, zu viele copy und paste ist nicht gut.
wenn ich reduziere
erhalte ich die ganze Datenreihe:
.....
{'time': '2022-04-30T19:22:59.063505Z', 'BatterySOC': 34, 'BatterySOC_1': 'Growatt'}, {'time': '2022-04-30T19:23:49.041910Z', 'BatterySOC': 34, 'BatterySOC_1': 'Growatt'}, {'time': '2022-04-30T19:24:39.033493Z', 'BatterySOC': 34, 'BatterySOC_1': 'Growatt'}, {'time': '2022-04-30T19:25:29.095501Z', 'BatterySOC': 34, 'BatterySOC_1': 'Growatt'}
....
Jetzt habe ich mal in der Datenbank nachgeschaut:
fieldKey BatterySOC / integer
Also muss ich irgendwie BatterySOC rausfiltern und übergeben. Als Integer würde reichen.
Den letzten wert müsste ich über ORDER By "Time" als fieldKey , wenn ich richtig liege, und DESC LIMIT 1 finden.
Ich finde allerdings nicht "Time" als fieldKey. Eventuell liegt hier schon mein Problem.
Soweit Richtig?
Code: Alles auswählen
rs = client.query('SELECT * from "BatterySOC" ORDER BY "Time" DESC LIMIT 1')
points = list(rs.get_points())
Ich bekomme das zurück
Traceback (most recent call last):
File "/home/ralf/pythons/./test.py", line 34, in <module>
rs = client.query('SELECT * from "BatterySOC" ORDER BY Time DESC LIMIT 1')
File "/home/ralf/.local/lib/python3.9/site-packages/influxdb/client.py", line 521, in query
response = self.request(
File "/home/ralf/.local/lib/python3.9/site-packages/influxdb/client.py", line 378, in request
raise InfluxDBClientError(err_msg, response.status_code)
influxdb.exceptions.InfluxDBClientError: 400: {"error":"error parsing query: only ORDER BY time supported at this time"}