Skip to content
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. [gelöst] SQL getHistory Abfrage

NEWS

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

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

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

[gelöst] SQL getHistory Abfrage

[gelöst] SQL getHistory Abfrage

Scheduled Pinned Locked Moved Skripten / Logik
58 Posts 4 Posters 4.8k Views 4 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • apollon77A Online
    apollon77A Online
    apollon77
    wrote on last edited by
    #7

    Ich denke das das Example falsch ist.

    mach mal in die options von dem call ein `addIr: true´ dazu ... ist Sie dann da? Wenn ja muss ich das example fixen.

    Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

    • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
    • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
    O 1 Reply Last reply
    0
    • apollon77A apollon77

      Ich denke das das Example falsch ist.

      mach mal in die options von dem call ein `addIr: true´ dazu ... ist Sie dann da? Wenn ja muss ich das example fixen.

      O Offline
      O Offline
      ostseeskipper
      wrote on last edited by
      #8

      @apollon77 said in SQL getHistory Abfrage:

      `addIr: true´

      var end = Date.now();
      log(new Date());
      
      sendTo('sql.0', 'getHistory', {
          id: 'smartmeter.0.1-0:16_7_0__255.value',
          options: {
              addIr: true,
              start:      end - 60000,
              end:        end,
              aggregate: 'minmax' // or 'none' to get raw values
          }
      }, function (result) {
          for (var i = 0; i < result.result.length; i++) {
              console.log(i);
              console.log(result.result[i].id);
              console.log(new Date(result.result[i].ts).toISOString());
              //console.log(result.result[i].id + ' ' + new Date(result.result[i].ts).toISOString());
          }
      });
      

      Das ändert leider nichts.

      20:28:33.439	info	javascript.0 (149) Stop script script.js.Logik.GleitDurchschnitt
      20:28:33.439	info	javascript.1 (16606) Stop script script.js.Logik.GleitDurchschnitt
      20:28:33.442	info	javascript.0 (149) Start javascript script.js.Logik.GleitDurchschnitt
      20:28:33.447	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: Thu Mar 31 2022 20:28:33 GMT+0200 (Mitteleuropäische Sommerzeit)
      20:28:33.448	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: registered 0 subscriptions and 0 schedules
      20:28:33.458	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: 0
      20:28:33.458	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: undefined
      20:28:33.458	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: 2022-03-31T18:27:33.447Z
      20:28:33.459	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: 1
      20:28:33.459	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: undefined
      20:28:33.459	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: 2022-03-31T18:27:37.042Z
      

      Was bewirkt diese Option, finde auch keine weitere Doku dazu.

      O 1 Reply Last reply
      0
      • O ostseeskipper

        @apollon77 said in SQL getHistory Abfrage:

        `addIr: true´

        var end = Date.now();
        log(new Date());
        
        sendTo('sql.0', 'getHistory', {
            id: 'smartmeter.0.1-0:16_7_0__255.value',
            options: {
                addIr: true,
                start:      end - 60000,
                end:        end,
                aggregate: 'minmax' // or 'none' to get raw values
            }
        }, function (result) {
            for (var i = 0; i < result.result.length; i++) {
                console.log(i);
                console.log(result.result[i].id);
                console.log(new Date(result.result[i].ts).toISOString());
                //console.log(result.result[i].id + ' ' + new Date(result.result[i].ts).toISOString());
            }
        });
        

        Das ändert leider nichts.

        20:28:33.439	info	javascript.0 (149) Stop script script.js.Logik.GleitDurchschnitt
        20:28:33.439	info	javascript.1 (16606) Stop script script.js.Logik.GleitDurchschnitt
        20:28:33.442	info	javascript.0 (149) Start javascript script.js.Logik.GleitDurchschnitt
        20:28:33.447	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: Thu Mar 31 2022 20:28:33 GMT+0200 (Mitteleuropäische Sommerzeit)
        20:28:33.448	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: registered 0 subscriptions and 0 schedules
        20:28:33.458	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: 0
        20:28:33.458	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: undefined
        20:28:33.458	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: 2022-03-31T18:27:33.447Z
        20:28:33.459	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: 1
        20:28:33.459	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: undefined
        20:28:33.459	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: 2022-03-31T18:27:37.042Z
        

        Was bewirkt diese Option, finde auch keine weitere Doku dazu.

        O Offline
        O Offline
        ostseeskipper
        wrote on last edited by
        #9

        @apollon77
        jetzt habe ich das Beispiel "copy paste" aus Github probiert

        sendTo('sql.0', 'query', 'SELECT id FROM datapoints WHERE name="system.adapter.admin.0.memRss"', function (result) {
            if (result.error) {
                console.error(result.error);
            } else {
                // show result
                console.log('Rows: ' + JSON.stringify(result.result));
                var now = new Date();
                now.setHours(-1);
                sendTo('sql.0', 'query', 'SELECT * FROM ts_number WHERE ts >= ' + now.getTime() + ' AND id=' + result.result[0].id, function (result) {
                    console.log('Rows: ' + JSON.stringify(result.result));
                });
            }
        });
        

        Das sagt mir

        21:07:56.462	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: registered 0 subscriptions and 0 schedules
        21:07:56.469	error	javascript.0 (149) script.js.Logik.GleitDurchschnitt: Error: ER_NO_DB_ERROR: No database selected
        
        1 Reply Last reply
        0
        • apollon77A Online
          apollon77A Online
          apollon77
          wrote on last edited by
          #10

          sorry hatte ein Type drin: addId: true ...

          Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

          • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
          • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
          O 1 Reply Last reply
          0
          • apollon77A apollon77

            sorry hatte ein Type drin: addId: true ...

            O Offline
            O Offline
            ostseeskipper
            wrote on last edited by ostseeskipper
            #11

            @apollon77

            wenn die Beispiele schon nicht funktionieren was kann soll man dann tun?
            Der SQL Adapter zeichnet Datenpunkte wie gewünscht auf und stellt die Infos auch bereit, also muss er doch eine Datenbank haben.
            1c1c22c2-dede-48f2-b62b-72c1e3843b31-grafik.png

            5b607f42-3f2e-4d73-b131-d2387cc0f0e1-grafik.png

            Könnt Ihr bitte euer Beispiel fixen damit man das nutzen und daran lernen kann.
            lieben Dank

            O apollon77A 2 Replies Last reply
            0
            • O ostseeskipper

              @apollon77

              wenn die Beispiele schon nicht funktionieren was kann soll man dann tun?
              Der SQL Adapter zeichnet Datenpunkte wie gewünscht auf und stellt die Infos auch bereit, also muss er doch eine Datenbank haben.
              1c1c22c2-dede-48f2-b62b-72c1e3843b31-grafik.png

              5b607f42-3f2e-4d73-b131-d2387cc0f0e1-grafik.png

              Könnt Ihr bitte euer Beispiel fixen damit man das nutzen und daran lernen kann.
              lieben Dank

              O Offline
              O Offline
              ostseeskipper
              wrote on last edited by
              #12

              @apollon77

              auch mit addId: true ... gibt es undefined 😢

              1 Reply Last reply
              0
              • O ostseeskipper

                @apollon77

                wenn die Beispiele schon nicht funktionieren was kann soll man dann tun?
                Der SQL Adapter zeichnet Datenpunkte wie gewünscht auf und stellt die Infos auch bereit, also muss er doch eine Datenbank haben.
                1c1c22c2-dede-48f2-b62b-72c1e3843b31-grafik.png

                5b607f42-3f2e-4d73-b131-d2387cc0f0e1-grafik.png

                Könnt Ihr bitte euer Beispiel fixen damit man das nutzen und daran lernen kann.
                lieben Dank

                apollon77A Online
                apollon77A Online
                apollon77
                wrote on last edited by
                #13

                @ostseeskipper bitte ganz locker bleiben. Was denkst du was wir in dieser Konversation gerade tun?! Du hast auf ein Problem hingewiesen und ich versuche zu helfen das wir die Beispiele fixen können und ich hab noch nicht mal um ein github issue gebeten.

                Ich nehme also jetzt mit das es auch mit addId nicht geht. Dann muss ich wohl mal genauer schauen.

                Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                O 1 Reply Last reply
                0
                • apollon77A apollon77

                  @ostseeskipper bitte ganz locker bleiben. Was denkst du was wir in dieser Konversation gerade tun?! Du hast auf ein Problem hingewiesen und ich versuche zu helfen das wir die Beispiele fixen können und ich hab noch nicht mal um ein github issue gebeten.

                  Ich nehme also jetzt mit das es auch mit addId nicht geht. Dann muss ich wohl mal genauer schauen.

                  O Offline
                  O Offline
                  ostseeskipper
                  wrote on last edited by ostseeskipper
                  #14

                  @apollon77
                  ich bleib locker 👍 😊 und hab gesucht
                  hab den Fehler gefunden und auf Github was geschrieben

                  edit: Sorry wenn es zu emotional rüber kam, Ihr macht schon tolle arbeit👍

                  apollon77A 1 Reply Last reply
                  0
                  • O ostseeskipper

                    @apollon77
                    ich bleib locker 👍 😊 und hab gesucht
                    hab den Fehler gefunden und auf Github was geschrieben

                    edit: Sorry wenn es zu emotional rüber kam, Ihr macht schon tolle arbeit👍

                    apollon77A Online
                    apollon77A Online
                    apollon77
                    wrote on last edited by
                    #15

                    @ostseeskipper Hi,

                    ok, aber das was Du jetzt af GitHub hast ist was anderes ... oder ist es quasi kombiniert?

                    Weil "query" ist was anderes als "getHistory"

                    Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                    • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                    • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                    O 1 Reply Last reply
                    0
                    • F Offline
                      F Offline
                      fastfoot
                      wrote on last edited by
                      #16
                      • Bei query fehlt die Angabe der Datenbank vor den Tabellennamen, steht auch so im Readme. Also SELECT id FROM iobroker.datapoints....
                      • Bei getHistory wird id nicht mit zurück geliefert, allerdings würde ich mich fragen wozu, denn die Id ist ja Bestandteil der Abfrage. Es werden nur ts und val geliefert.
                      • addId hat tatsächlich keinen Effekt, habe es im source auch nur einmal gefunden, genutzt scheint es nicht zu werden.

                      iobroker läuft unter Docker auf QNAP TS-451+
                      SkriptRecovery: https://forum.iobroker.net/post/930558

                      apollon77A 1 Reply Last reply
                      0
                      • apollon77A apollon77

                        @ostseeskipper Hi,

                        ok, aber das was Du jetzt af GitHub hast ist was anderes ... oder ist es quasi kombiniert?

                        Weil "query" ist was anderes als "getHistory"

                        O Offline
                        O Offline
                        ostseeskipper
                        wrote on last edited by
                        #17

                        @apollon77

                        Es ist kombiniert, da ja query und gethistory BuildIn Funktionen sind

                        Da ich mit gethistory nicht weitergekommen bin hatte ich query versucht und auch da fehler bekommen
                        Query sagte mir das die Datenbank nicht angegeben ist.
                        also die Datenbank im ersten sendto für die id's hinzugefügt,

                        dann ging es weiter, aber nun kam wieder diese 'undefined' Fehlermeldung wie aus der gethistory funktion

                        dann habe ich im 2ten sendto der 'query' funktion zum holen der values auch die Datenbank hinzugefügt.

                        Wenn es in der internen gethistory Funktion auch so abläuft nur halt intern im programmcode, vermute ich, das da der Datenbankname nicht sauber aus den Adaptereinstellungen ermittelt wird oder in die integrierten BuildIn-Funktionen wie gethistory übergeben werden.

                        F 1 Reply Last reply
                        0
                        • O ostseeskipper

                          @apollon77

                          Es ist kombiniert, da ja query und gethistory BuildIn Funktionen sind

                          Da ich mit gethistory nicht weitergekommen bin hatte ich query versucht und auch da fehler bekommen
                          Query sagte mir das die Datenbank nicht angegeben ist.
                          also die Datenbank im ersten sendto für die id's hinzugefügt,

                          dann ging es weiter, aber nun kam wieder diese 'undefined' Fehlermeldung wie aus der gethistory funktion

                          dann habe ich im 2ten sendto der 'query' funktion zum holen der values auch die Datenbank hinzugefügt.

                          Wenn es in der internen gethistory Funktion auch so abläuft nur halt intern im programmcode, vermute ich, das da der Datenbankname nicht sauber aus den Adaptereinstellungen ermittelt wird oder in die integrierten BuildIn-Funktionen wie gethistory übergeben werden.

                          F Offline
                          F Offline
                          fastfoot
                          wrote on last edited by fastfoot
                          #18

                          @ostseeskipper sagte in SQL getHistory Abfrage:

                          Wenn es in der internen gethistory Funktion auch so abläuft nur halt intern im programmcode, vermute ich, das da der Datenbankname nicht sauber aus den Adaptereinstellungen ermittelt wird oder in die integrierten BuildIn-Funktionen wie gethistory übergeben werden.

                          Schmarrn. Deine Abfrage funktionierte doch für das Datum, id ist einfach nicht im Resultset vorhanden. Weshalb erwartest du das überhaupt? logge mal val statt id

                                  console.log(result.result[i].id);
                                  console.log(new Date(result.result[i].ts).toISOString());
                          
                          

                          iobroker läuft unter Docker auf QNAP TS-451+
                          SkriptRecovery: https://forum.iobroker.net/post/930558

                          O 1 Reply Last reply
                          0
                          • F fastfoot

                            @ostseeskipper sagte in SQL getHistory Abfrage:

                            Wenn es in der internen gethistory Funktion auch so abläuft nur halt intern im programmcode, vermute ich, das da der Datenbankname nicht sauber aus den Adaptereinstellungen ermittelt wird oder in die integrierten BuildIn-Funktionen wie gethistory übergeben werden.

                            Schmarrn. Deine Abfrage funktionierte doch für das Datum, id ist einfach nicht im Resultset vorhanden. Weshalb erwartest du das überhaupt? logge mal val statt id

                                    console.log(result.result[i].id);
                                    console.log(new Date(result.result[i].ts).toISOString());
                            
                            
                            O Offline
                            O Offline
                            ostseeskipper
                            wrote on last edited by
                            #19

                            @fastfoot
                            ich hatte erst mal nur erwartet das das Beispiel in der readme funktioniert, 😇

                                    console.log(result.result[i].id + ' ' + new Date(result.result[i].ts).toISOString());
                            

                            für jemanden der nicht aus der JS Sprache kommt und lernen will etwas frustriend.

                            Auch im anderen Beispiel zu queries ist die Datenbank im Beispielscript nicht enthalten, aber ja du hast Recht es steht ein paar zeilen drunter.

                            Was ich möchte, ist von einem Datenpunkt den gleitenden Durchschnitt der letzten x Minuten in eine Variable bzw. einen Datenpunkt schreiben.
                            .ts muss ich vermutlich durch .val ersetzen um den Wert zu bekommen

                            console.log(new Date(result.result[i].ts).toISOString());
                            
                            1 Reply Last reply
                            0
                            • apollon77A Online
                              apollon77A Online
                              apollon77
                              wrote on last edited by
                              #20

                              Naja, schau mal hier https://github.com/ioBroker/ioBroker.sql#structure-of-the-dbs ... da steht elche Tabelle für welchen DB Typ wie heisst ... Ja ich kann gern in der Doku darauf hinweisen das das Beispiel zB für ne PostGres bzw sqlite ist und ggf andere Tabellennamen genutzt werden müssen.

                              .ts muss ich vermutlich durch .val ersetzen um den Wert zu bekommen

                              ts ist der Timestamp ... und val ist was anderes.

                              Logge doch einfach mal console.log(JSON.stringify(result.result[i])) dann sehen wir was wirklich zurückommt und raten nicht rum

                              Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                              • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                              • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                              O F 2 Replies Last reply
                              0
                              • F fastfoot
                                • Bei query fehlt die Angabe der Datenbank vor den Tabellennamen, steht auch so im Readme. Also SELECT id FROM iobroker.datapoints....
                                • Bei getHistory wird id nicht mit zurück geliefert, allerdings würde ich mich fragen wozu, denn die Id ist ja Bestandteil der Abfrage. Es werden nur ts und val geliefert.
                                • addId hat tatsächlich keinen Effekt, habe es im source auch nur einmal gefunden, genutzt scheint es nicht zu werden.
                                apollon77A Online
                                apollon77A Online
                                apollon77
                                wrote on last edited by
                                #21

                                @fastfoot sagte in SQL getHistory Abfrage:

                                addId hat tatsächlich keinen Effekt, habe es im source auch nur einmal gefunden, genutzt scheint es nicht zu werden.

                                Jupp scheint so zu sein, dann wäre das ein Bug

                                Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                                • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                                • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                                1 Reply Last reply
                                0
                                • apollon77A apollon77

                                  Naja, schau mal hier https://github.com/ioBroker/ioBroker.sql#structure-of-the-dbs ... da steht elche Tabelle für welchen DB Typ wie heisst ... Ja ich kann gern in der Doku darauf hinweisen das das Beispiel zB für ne PostGres bzw sqlite ist und ggf andere Tabellennamen genutzt werden müssen.

                                  .ts muss ich vermutlich durch .val ersetzen um den Wert zu bekommen

                                  ts ist der Timestamp ... und val ist was anderes.

                                  Logge doch einfach mal console.log(JSON.stringify(result.result[i])) dann sehen wir was wirklich zurückommt und raten nicht rum

                                  O Offline
                                  O Offline
                                  ostseeskipper
                                  wrote on last edited by
                                  #22

                                  @apollon77 said in SQL getHistory Abfrage:

                                  Logge doch einfach mal console.log(JSON.stringify(result.result[i])) dann sehen wir was wirklich zurückommt und raten nicht rum

                                  In der query oder gethistory ?

                                  F 1 Reply Last reply
                                  0
                                  • apollon77A apollon77

                                    Naja, schau mal hier https://github.com/ioBroker/ioBroker.sql#structure-of-the-dbs ... da steht elche Tabelle für welchen DB Typ wie heisst ... Ja ich kann gern in der Doku darauf hinweisen das das Beispiel zB für ne PostGres bzw sqlite ist und ggf andere Tabellennamen genutzt werden müssen.

                                    .ts muss ich vermutlich durch .val ersetzen um den Wert zu bekommen

                                    ts ist der Timestamp ... und val ist was anderes.

                                    Logge doch einfach mal console.log(JSON.stringify(result.result[i])) dann sehen wir was wirklich zurückommt und raten nicht rum

                                    F Offline
                                    F Offline
                                    fastfoot
                                    wrote on last edited by
                                    #23

                                    @apollon77 sagte in SQL getHistory Abfrage:

                                    val ist was anderes.

                                    val ist der Wert, wir müssen nicht raten, ich habe das schon geprüft 🙂
                                    {'ts':1648832706691,'val':2.029}

                                    iobroker läuft unter Docker auf QNAP TS-451+
                                    SkriptRecovery: https://forum.iobroker.net/post/930558

                                    O 1 Reply Last reply
                                    0
                                    • F fastfoot

                                      @apollon77 sagte in SQL getHistory Abfrage:

                                      val ist was anderes.

                                      val ist der Wert, wir müssen nicht raten, ich habe das schon geprüft 🙂
                                      {'ts':1648832706691,'val':2.029}

                                      O Offline
                                      O Offline
                                      ostseeskipper
                                      wrote on last edited by
                                      #24

                                      @fastfoot und @apollon77

                                      sendTo('sql.0', 'query', 'SELECT id FROM iobroker.datapoints WHERE name="smartmeter.0.1-0:16_7_0__255.value"', function (result) {
                                          if (result.error) {
                                              console.error(result.error);
                                          } else {
                                              var now = new Date();
                                              now.setMinutes(-3);
                                              sendTo('sql.0', 'query', 'SELECT AVG(val) AS Wert FROM iobroker.ts_number WHERE ts >= ' + now.getTime() + ' AND id=' + result.result[0].id, function (result) {
                                                  console.log(JSON.stringify(result.result[0]));
                                              });
                                          }
                                      });
                                      

                                      ergibt

                                      21:54:35.208	info	javascript.0 (149) Start javascript script.js.Logik.GleitDurchschnitt
                                      21:54:35.226	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: registered 0 subscriptions and 0 schedules
                                      21:54:35.242	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: {"Wert":3.6997549019607843}
                                      
                                      O 1 Reply Last reply
                                      0
                                      • O ostseeskipper

                                        @fastfoot und @apollon77

                                        sendTo('sql.0', 'query', 'SELECT id FROM iobroker.datapoints WHERE name="smartmeter.0.1-0:16_7_0__255.value"', function (result) {
                                            if (result.error) {
                                                console.error(result.error);
                                            } else {
                                                var now = new Date();
                                                now.setMinutes(-3);
                                                sendTo('sql.0', 'query', 'SELECT AVG(val) AS Wert FROM iobroker.ts_number WHERE ts >= ' + now.getTime() + ' AND id=' + result.result[0].id, function (result) {
                                                    console.log(JSON.stringify(result.result[0]));
                                                });
                                            }
                                        });
                                        

                                        ergibt

                                        21:54:35.208	info	javascript.0 (149) Start javascript script.js.Logik.GleitDurchschnitt
                                        21:54:35.226	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: registered 0 subscriptions and 0 schedules
                                        21:54:35.242	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: {"Wert":3.6997549019607843}
                                        
                                        O Offline
                                        O Offline
                                        ostseeskipper
                                        wrote on last edited by
                                        #25

                                        Wenn mir nun noch einer von euch Beiden bitte sagen könne wie ich die Zahl 3.699 in eine Variable extrahiert bekomme wäre mein Abend gerettet😊

                                        paul53P F 2 Replies Last reply
                                        0
                                        • O ostseeskipper

                                          @apollon77 said in SQL getHistory Abfrage:

                                          Logge doch einfach mal console.log(JSON.stringify(result.result[i])) dann sehen wir was wirklich zurückommt und raten nicht rum

                                          In der query oder gethistory ?

                                          F Offline
                                          F Offline
                                          fastfoot
                                          wrote on last edited by
                                          #26

                                          @ostseeskipper probiere mal mit getHistory average statt minmax. Dann kannst du mit:
                                          log(i+' : ' + new Date(result.result[i].ts).toLocaleString() + ' => ' + result.result[i].val); das Ergebnis anschauen

                                          22:01:19.335	info	javascript.1 (527) script.js.Forum.getHistory: 0 : 1.4.2022, 19:14:39 => 2.0199999999999996
                                          22:01:19.336	info	javascript.1 (527) script.js.Forum.getHistory: 1 : 1.4.2022, 20:29:39 => 2.01
                                          22:01:19.337	info	javascript.1 (527) script.js.Forum.getHistory: 2 : 1.4.2022, 22:01:19 => 1.9977777777777777
                                          

                                          iobroker läuft unter Docker auf QNAP TS-451+
                                          SkriptRecovery: https://forum.iobroker.net/post/930558

                                          1 Reply Last reply
                                          1
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          574

                                          Online

                                          32.4k

                                          Users

                                          81.3k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe