Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. [gelöst] Datenpunkt mit Blockly aus SQL-History auslesen

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.7k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.1k

[gelöst] Datenpunkt mit Blockly aus SQL-History auslesen

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
9 Beiträge 4 Kommentatoren 791 Aufrufe 3 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • R Offline
    R Offline
    ROGA
    schrieb am zuletzt editiert von ROGA
    #1

    Hallo,

    ich bin absoluter Neuling was Iobroker betrifft und hoffe, ihr verzeiht mir meine eventuellen dummen Fragen ;-)

    Ich versuche mich gerade etwas in Blockly einzuarbeiten. Gerne würde ich eine Berechnung für den gesamten Stromverbrauch in Wh (pro laufenden Tag) bewerkstelligen. Dazu lass ich mir erst einmal den Datenpunkt ConsumedPower von meinem Shelly em3 in die SQL-History schreiben. Als nächstes würde ich mit Blockly den ersten Eintrag des laufenden Tages (00:00h) sowie den aktuell letzten Eintrag des laufenden Tages auslesen wollen. Die Subtraktion des letzten Eintrags mit dem ersten Eintrag ergäbe ja dann die konsumierte Menge in Wh. Soweit meine Theorie. Mein Problem dabei ist jedoch, dass ich partout nicht herausgefunden habe, wie ich in Blockly an die SQL-History rankomme um die gewünschten Werte auszulesen.

    Ich hoffe, ich habe mich einigermassen verständlich ausgedrückt, falls nicht, fragt bitte einfach nach.

    Wäre über einen Tipp oder sogar Lösungsvorschlag sehr dankbar.

    LG Roly

    LG Roli

    haus-automatisierungH paul53P YodaY 3 Antworten Letzte Antwort
    0
    • R ROGA

      Hallo,

      ich bin absoluter Neuling was Iobroker betrifft und hoffe, ihr verzeiht mir meine eventuellen dummen Fragen ;-)

      Ich versuche mich gerade etwas in Blockly einzuarbeiten. Gerne würde ich eine Berechnung für den gesamten Stromverbrauch in Wh (pro laufenden Tag) bewerkstelligen. Dazu lass ich mir erst einmal den Datenpunkt ConsumedPower von meinem Shelly em3 in die SQL-History schreiben. Als nächstes würde ich mit Blockly den ersten Eintrag des laufenden Tages (00:00h) sowie den aktuell letzten Eintrag des laufenden Tages auslesen wollen. Die Subtraktion des letzten Eintrags mit dem ersten Eintrag ergäbe ja dann die konsumierte Menge in Wh. Soweit meine Theorie. Mein Problem dabei ist jedoch, dass ich partout nicht herausgefunden habe, wie ich in Blockly an die SQL-History rankomme um die gewünschten Werte auszulesen.

      Ich hoffe, ich habe mich einigermassen verständlich ausgedrückt, falls nicht, fragt bitte einfach nach.

      Wäre über einen Tipp oder sogar Lösungsvorschlag sehr dankbar.

      LG Roly

      haus-automatisierungH Offline
      haus-automatisierungH Offline
      haus-automatisierung
      Developer Most Active
      schrieb am zuletzt editiert von
      #2

      @roga sagte in Datenpunkt mit Blockly aus SQL-History auslesen:

      Mein Problem dabei ist jedoch, dass ich partout nicht herausgefunden habe, wie ich in Blockly an die SQL-History rankomme um die gewünschten Werte auszulesen.

      Das funktioniert mit sendTo. Entweder direkt ein SQL-Statement senden, oder die History-Daten abfragen. Siehe:

      • https://github.com/ioBroker/ioBroker.sql#custom-queries
      • https://github.com/ioBroker/ioBroker.sql#access-values-from-javascript-adapter

      Das sendTo kann man sich auch mit Blockly zusammenbauen - ist nur etwas sperrig.

      🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
      🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
      📚 Meine inoffizielle ioBroker Dokumentation

      R 1 Antwort Letzte Antwort
      0
      • R ROGA

        Hallo,

        ich bin absoluter Neuling was Iobroker betrifft und hoffe, ihr verzeiht mir meine eventuellen dummen Fragen ;-)

        Ich versuche mich gerade etwas in Blockly einzuarbeiten. Gerne würde ich eine Berechnung für den gesamten Stromverbrauch in Wh (pro laufenden Tag) bewerkstelligen. Dazu lass ich mir erst einmal den Datenpunkt ConsumedPower von meinem Shelly em3 in die SQL-History schreiben. Als nächstes würde ich mit Blockly den ersten Eintrag des laufenden Tages (00:00h) sowie den aktuell letzten Eintrag des laufenden Tages auslesen wollen. Die Subtraktion des letzten Eintrags mit dem ersten Eintrag ergäbe ja dann die konsumierte Menge in Wh. Soweit meine Theorie. Mein Problem dabei ist jedoch, dass ich partout nicht herausgefunden habe, wie ich in Blockly an die SQL-History rankomme um die gewünschten Werte auszulesen.

        Ich hoffe, ich habe mich einigermassen verständlich ausgedrückt, falls nicht, fragt bitte einfach nach.

        Wäre über einen Tipp oder sogar Lösungsvorschlag sehr dankbar.

        LG Roly

        paul53P Offline
        paul53P Offline
        paul53
        schrieb am zuletzt editiert von paul53
        #3

        @roga sagte: ersten Eintrag des laufenden Tages (00:00h) sowie den aktuell letzten Eintrag des laufenden Tages auslesen wollen.

        Einfacher ist es, sich täglich den Wert um 23:29 Uhr in einem eigenen Datenpunkt zu merken. Mit diesem Wert kann man dann rechnen.
        Noch einfacher: Der Sourceanalytix-Adapter liefert Periodenwerte (Tag, Woche, Monat, Jahr).

        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

        1 Antwort Letzte Antwort
        0
        • haus-automatisierungH haus-automatisierung

          @roga sagte in Datenpunkt mit Blockly aus SQL-History auslesen:

          Mein Problem dabei ist jedoch, dass ich partout nicht herausgefunden habe, wie ich in Blockly an die SQL-History rankomme um die gewünschten Werte auszulesen.

          Das funktioniert mit sendTo. Entweder direkt ein SQL-Statement senden, oder die History-Daten abfragen. Siehe:

          • https://github.com/ioBroker/ioBroker.sql#custom-queries
          • https://github.com/ioBroker/ioBroker.sql#access-values-from-javascript-adapter

          Das sendTo kann man sich auch mit Blockly zusammenbauen - ist nur etwas sperrig.

          R Offline
          R Offline
          ROGA
          schrieb am zuletzt editiert von
          #4

          @haus-automatisierung

          Danke für den Hinweis. Leider stehe ich wirklich auf dem Schlauch und weiss nicht, wie ich das ins Blockly umsetzen soll. Ich habe mir das hier gebastelt, bekomme aber keine Rückwerte angezeigt. Wie kann ich mir das Ergebnis meiner SQL-Query anzeigen lassen?

          a572c764-8dbd-4d45-99a1-0e2f11352158-image.png

          Ist meine SQL-Query so überhaupt korrekt bzw. steht der Datenpfad genau so wie im orignialen Shelly-Adapter auch im SQL-Adapter?

          Select * FROM shelly.0.SHEM-3#349454716E9D#1.Total.ConsumedPower
          

          oder müsste er so lauten?

          Select * FROM SHEM-3#349454716E9D#1.Total.ConsumedPower
          

          Bin für jede Hilfe sehr dankbar!

          LG Roli

          haus-automatisierungH 1 Antwort Letzte Antwort
          0
          • R ROGA

            @haus-automatisierung

            Danke für den Hinweis. Leider stehe ich wirklich auf dem Schlauch und weiss nicht, wie ich das ins Blockly umsetzen soll. Ich habe mir das hier gebastelt, bekomme aber keine Rückwerte angezeigt. Wie kann ich mir das Ergebnis meiner SQL-Query anzeigen lassen?

            a572c764-8dbd-4d45-99a1-0e2f11352158-image.png

            Ist meine SQL-Query so überhaupt korrekt bzw. steht der Datenpfad genau so wie im orignialen Shelly-Adapter auch im SQL-Adapter?

            Select * FROM shelly.0.SHEM-3#349454716E9D#1.Total.ConsumedPower
            

            oder müsste er so lauten?

            Select * FROM SHEM-3#349454716E9D#1.Total.ConsumedPower
            

            Bin für jede Hilfe sehr dankbar!

            haus-automatisierungH Offline
            haus-automatisierungH Offline
            haus-automatisierung
            Developer Most Active
            schrieb am zuletzt editiert von
            #5

            @roga sagte in Datenpunkt mit Blockly aus SQL-History auslesen:

            Ist meine SQL-Query so überhaupt korrekt

            Nein, in SQL speichert man in Tabellen. Die Daten vom ioBroker liegen in verschiedenen Tabellen. Wenn Du nach der Objekt-ID filtern möchtest, dann musst Du einen Join auf eine andere Tabelle durchführen. Und wenn Du mit * selektierst, bekommst Du ja alle Ergebnisse.

            Lass doch die Datenbank für Dich rechnen. Ich kann hier nur keinen SQL-Grundkurz in dem Thread erstellen um alles zu erklären. Daher ja der andere Vorschlag ohne Custom Queries. Dann braucht man auch kein SQL-Wissen.

            🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
            🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
            📚 Meine inoffizielle ioBroker Dokumentation

            R 1 Antwort Letzte Antwort
            0
            • haus-automatisierungH haus-automatisierung

              @roga sagte in Datenpunkt mit Blockly aus SQL-History auslesen:

              Ist meine SQL-Query so überhaupt korrekt

              Nein, in SQL speichert man in Tabellen. Die Daten vom ioBroker liegen in verschiedenen Tabellen. Wenn Du nach der Objekt-ID filtern möchtest, dann musst Du einen Join auf eine andere Tabelle durchführen. Und wenn Du mit * selektierst, bekommst Du ja alle Ergebnisse.

              Lass doch die Datenbank für Dich rechnen. Ich kann hier nur keinen SQL-Grundkurz in dem Thread erstellen um alles zu erklären. Daher ja der andere Vorschlag ohne Custom Queries. Dann braucht man auch kein SQL-Wissen.

              R Offline
              R Offline
              ROGA
              schrieb am zuletzt editiert von
              #6

              @haus-automatisierung sagte in Datenpunkt mit Blockly aus SQL-History auslesen:

              Die Daten vom ioBroker liegen in verschiedenen Tabellen.

              Ich glaube genau da liegt bei mir das Problem. Ich weiss offensichtlich nicht, wie ich eine Tabelle im Iobroker ansprechen muss.

              Für mein Verständnis:

              Wenn ich einen Datenpunkt in der History (SQL-Adapter) haben möchte, dann aktiviere ich das ja, in dem ich in der Konfiguration des gewünschten Datenpunkts die Einstellungen für sql.0 aktiviere. Nun sollte doch jedes Mal, wenn sich der Wert des gewünschten Datenpunkts verändert, ein neuer Eintrag in der SQL-History erstellt werden, der zum korrespondierenden, neuen Wert auch noch den dazugehörigen Zeitstempel mitspeichert, ist das soweit korrekt? Wenn dem so ist, existiert jetzt eine neue Tabelle in der History für diesen einen Datenpunkt die nur aus zwei Spalten (Zeitstempel und aktueller Wert) besteht? Wenn ja, wie kann ich diese Tabelle finden bzw. ansprechen?

              Wenn hierzu ein Paar klärende Worte geäussert werden könnten, würde mir das vermutlich sehr viel weiterhelfen.

              Wie schon erwähnt, ich bin noch ganz frisch mit dem Iobroker unterwegs und mache daher nur kleine Fortschritte. Mir ist noch nicht alles klar, wie der Iobroker aufgebaut ist und wie er funktioniert, aber ich möchte es unbedingt herausfinden :-)

              Vielen Dank!

              LG Roli

              haus-automatisierungH 1 Antwort Letzte Antwort
              0
              • R ROGA

                @haus-automatisierung sagte in Datenpunkt mit Blockly aus SQL-History auslesen:

                Die Daten vom ioBroker liegen in verschiedenen Tabellen.

                Ich glaube genau da liegt bei mir das Problem. Ich weiss offensichtlich nicht, wie ich eine Tabelle im Iobroker ansprechen muss.

                Für mein Verständnis:

                Wenn ich einen Datenpunkt in der History (SQL-Adapter) haben möchte, dann aktiviere ich das ja, in dem ich in der Konfiguration des gewünschten Datenpunkts die Einstellungen für sql.0 aktiviere. Nun sollte doch jedes Mal, wenn sich der Wert des gewünschten Datenpunkts verändert, ein neuer Eintrag in der SQL-History erstellt werden, der zum korrespondierenden, neuen Wert auch noch den dazugehörigen Zeitstempel mitspeichert, ist das soweit korrekt? Wenn dem so ist, existiert jetzt eine neue Tabelle in der History für diesen einen Datenpunkt die nur aus zwei Spalten (Zeitstempel und aktueller Wert) besteht? Wenn ja, wie kann ich diese Tabelle finden bzw. ansprechen?

                Wenn hierzu ein Paar klärende Worte geäussert werden könnten, würde mir das vermutlich sehr viel weiterhelfen.

                Wie schon erwähnt, ich bin noch ganz frisch mit dem Iobroker unterwegs und mache daher nur kleine Fortschritte. Mir ist noch nicht alles klar, wie der Iobroker aufgebaut ist und wie er funktioniert, aber ich möchte es unbedingt herausfinden :-)

                Vielen Dank!

                haus-automatisierungH Offline
                haus-automatisierungH Offline
                haus-automatisierung
                Developer Most Active
                schrieb am zuletzt editiert von
                #7

                @roga sagte in Datenpunkt mit Blockly aus SQL-History auslesen:

                Nun sollte doch jedes Mal, wenn sich der Wert des gewünschten Datenpunkts verändert, ein neuer Eintrag in der SQL-History erstellt werden, der zum korrespondierenden, neuen Wert auch noch den dazugehörigen Zeitstempel mitspeichert, ist das soweit korrekt?

                Ja, nimm doch einfach mal einen SQL-Client und guck in die Datenbank :)
                Dein Problem hat ja gerade nichts mit dem ioBroker zu tun, sondern mit SQL-Grundlagen.

                🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                📚 Meine inoffizielle ioBroker Dokumentation

                R 1 Antwort Letzte Antwort
                0
                • R ROGA

                  Hallo,

                  ich bin absoluter Neuling was Iobroker betrifft und hoffe, ihr verzeiht mir meine eventuellen dummen Fragen ;-)

                  Ich versuche mich gerade etwas in Blockly einzuarbeiten. Gerne würde ich eine Berechnung für den gesamten Stromverbrauch in Wh (pro laufenden Tag) bewerkstelligen. Dazu lass ich mir erst einmal den Datenpunkt ConsumedPower von meinem Shelly em3 in die SQL-History schreiben. Als nächstes würde ich mit Blockly den ersten Eintrag des laufenden Tages (00:00h) sowie den aktuell letzten Eintrag des laufenden Tages auslesen wollen. Die Subtraktion des letzten Eintrags mit dem ersten Eintrag ergäbe ja dann die konsumierte Menge in Wh. Soweit meine Theorie. Mein Problem dabei ist jedoch, dass ich partout nicht herausgefunden habe, wie ich in Blockly an die SQL-History rankomme um die gewünschten Werte auszulesen.

                  Ich hoffe, ich habe mich einigermassen verständlich ausgedrückt, falls nicht, fragt bitte einfach nach.

                  Wäre über einen Tipp oder sogar Lösungsvorschlag sehr dankbar.

                  LG Roly

                  YodaY Offline
                  YodaY Offline
                  Yoda
                  schrieb am zuletzt editiert von
                  #8

                  @roga
                  ich mache es wie folgt:
                  Mit dem Sourceanalytix-Adapter die einzelnen werte der Strom Verbraucher loggen.

                  Dann Habe ich mir einen Datenpunkte erzeugt im Beispiel 1-Verbrauch Tag-Gestern.
                  Dieser Punkt wird einmal am Tag um 23:57 Uhr mit den Werten aus dem Sourceanalytix-Adapter aktualisiert:
                  2023-06-12 13_00_53-Window.png

                  Das könnte man dann weiter spielen für Woche - Monat - Jahr.
                  Vielleicht Hilft es dir ja weiter....

                  Gruß Yoda
                  Stand 05.2025
                  Raspberry5,linux,arm64,CPUs:4,Geschwindigkeit:2400 MHz,Modell:Cortex-A76,RAM:15.8 GB,Node.js:v20.19.2

                  1 Antwort Letzte Antwort
                  0
                  • haus-automatisierungH haus-automatisierung

                    @roga sagte in Datenpunkt mit Blockly aus SQL-History auslesen:

                    Nun sollte doch jedes Mal, wenn sich der Wert des gewünschten Datenpunkts verändert, ein neuer Eintrag in der SQL-History erstellt werden, der zum korrespondierenden, neuen Wert auch noch den dazugehörigen Zeitstempel mitspeichert, ist das soweit korrekt?

                    Ja, nimm doch einfach mal einen SQL-Client und guck in die Datenbank :)
                    Dein Problem hat ja gerade nichts mit dem ioBroker zu tun, sondern mit SQL-Grundlagen.

                    R Offline
                    R Offline
                    ROGA
                    schrieb am zuletzt editiert von
                    #9

                    @haus-automatisierung Danke! Du hattest recht, ich habe mir einen SQL-Client (MYSQL-Workbench) installiert und mich ein wenig in SQL eingearbeitet (ja, hat etwas gedauert ;-) hat mich dann aber ein großes Stück weitergebracht.

                    Meine Anfrage wäre hiermit gelöst! :-)

                    LG Roli

                    1 Antwort Letzte Antwort
                    1
                    Antworten
                    • In einem neuen Thema antworten
                    Anmelden zum Antworten
                    • Älteste zuerst
                    • Neuste zuerst
                    • Meiste Stimmen


                    Support us

                    ioBroker
                    Community Adapters
                    Donate

                    799

                    Online

                    32.4k

                    Benutzer

                    81.5k

                    Themen

                    1.3m

                    Beiträge
                    Community
                    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                    ioBroker Community 2014-2025
                    logo
                    • Anmelden

                    • Du hast noch kein Konto? Registrieren

                    • Anmelden oder registrieren, um zu suchen
                    • Erster Beitrag
                      Letzter Beitrag
                    0
                    • Home
                    • Aktuell
                    • Tags
                    • Ungelesen 0
                    • Kategorien
                    • Unreplied
                    • Beliebt
                    • GitHub
                    • Docu
                    • Hilfe