Benachrichtigungen
Alles löschen

Mit SQL noch mehr Daten in Home Assistant nutzen

14 Beiträge
3 Benutzer
0 Reactions
276 Ansichten
Beiträge: 655
 Olli
Admin
Themenstarter
(@olli)
Mitglied
Beigetreten: Vor 10 Jahren
wpf-cross-image

Im Hintergrund speichert Home Assistant Daten, Zustände und die Verläufe deiner Entitäten in Datenbanken. Standardmäßig kommt dafür SQLite zum Einsatz. Falls du schon länger Home Assistant nutzt, hast du vielleicht irgendwann auf eine extern gehostete Datenbank wie MariaDB umgestellt. Wenn du an der Datenbank deines Home Assistants nichts verändert hast, verwendest du sehr wahrscheinlich SQLite. Auf diese Daten kann man direkt zugreifen, wenn man ein wenig SQL beherrscht. Um manuell über die Befehlszeile mit der SQLite-Datenbank zu arbeiten, benötigst du eine Installation von sqlite3 (Installationsanleitung). Alternativ kannst du den DB Browser for SQLite nutzen. Damit erhältst du einen praktischen Viewer…

13 Antworten
Beiträge: 6
Gast
(@Gunter)
Active Member
Beigetreten: Vor 1 Jahr

Hallo Olli,

ich denke im SQL Code für SQLite ist ein Copy/Past Fehler 😉

... FROM statistics...
... weitere ...

Viele Grüße
Gunter

Antwort
Beiträge: 6
Gast
(@Gunter)
Active Member
Beigetreten: Vor 1 Jahr

Jetzt hat die Formularfunktion den Text "..." entcodet 😉

Antwort
Beiträge: 655
 Olli
Admin
Themenstarter
(@olli)
Mitglied
Beigetreten: Vor 10 Jahren

Hi Gunter, du hast vollkommen Recht - sorry für den Fehler! Ich habe es im Beitrag korrigiert! Vielen Dank für deinen Hinweis!

Viele Grüße

Olli

Antwort
Beiträge: 6
(@jove02)
Active Member
Beigetreten: Vor 2 Wochen

Hallo Olli

Über Grafana werden über eine InfluxDB für einen Sensor Werte angezeigt, die nicht sein können, da ich die Daten über ein input_select fülle.

grafik

Gefüllt wird dieser input_select über eine Automatisierung (theoretisch auch manuell) und dann in einen Sensor übernommen und in zweiten Sensor nur die 1. Stelle.

      - name: Tibber Status Solvis SG-Ready
        state: >-
          {{states('input_select.solvis_sg_ready') }}
        unique_id: tibber_status_solvis_sg_ready

      - name: Tibber Status Solvis SG-Ready num
        state: >-
          {{states('input_select.solvis_sg_ready')|truncate(1, true, '') }}
        unique_id: tibber_status_solvis_sg_ready_num

Bei bestimmten Schaltvorgängen sehe ich in Grafana an stelle des von 4 auf 2 geschalteten Wertes aber 3 (einmal sogar 3,5 ???)

Die Anzeige der Sensoren in HA zeigen doch immer 2 an.

Um dieses Verhalten aufzuspüren wollte ich direkt in die DB schauen und habe deinen Beitrag gefunden. Doch meine Anpassung deines Beispiels erzeugt kein Ergebnis

SELECT ROUND((SELECT state FROM statistics INNER JOIN statistics_meta ON statistics.metadata_id=statistics_meta.id WHERE statistics_meta.statistic_id='sensor.tibber_status_solvis_sg_ready_num' AND created_ts < strftime('%s','2025-02-04 14:00:00') ORDER BY created_ts DESC LIMIT 0,1) - (SELECT state FROM statistics INNER JOIN statistics_meta ON statistics.metadata_id=statistics_meta.id WHERE statistics_meta.statistic_id='sensor.tibber_status_solvis_sg_ready_num' AND created_ts > strftime('%s','2025-02-04 11:00:00') ORDER BY created_ts ASC LIMIT 0,1),2) AS wert

(leider klappt das hier nicht mit Zeilenumbrüchen)

Siehst du evtl den Fehler in meinem Select?

Danke

Antwort
1 Antwort
 Olli
Admin
(@olli)
Beigetreten: Vor 10 Jahren

Mitglied
Beiträge: 655

@jove02 Hi! Aus der Ferne auf jeden Fall nicht ganz so easy, ich bin mir nicht sicher, ob ich es richtig verstanden habe. Aber hast du mal ein wenig mit den Zeiten gespielt? Je nach Setup ist ein Offset nicht ungewöhnlich (i. d. R. 1-2 Stunden bspw.).

Antwort
Seite 1 / 3