NEWS
SQL Werte separat über Switch Node ausgeben
-
Hallo,
ich mache mehrere MySQL Abfragen und erhalte entsprechend Werte zurück:
Problem ist am MySQL Node, dass es nur eine Ausgabe gibt wo alle SQL Ergebnisse ankommen. Somit muss ich die Werte entsprechend sortieren.
Dazu dachte ich mir, ich konvertiere es mit der JSON Node in ein JSON und kann dann über die Switch Node das ganze selektieren:
Aber aktuell läuft mir die Switch Node immer auf den "Ansonsten" Pfad raus (liegt vermutlich am falschen JSONata-Ausdruck) und was daran natürlich auch blöd ist, dass ich den Wert als String habe, obwohl es eine Number ist. Mir fehlt da leider aktuell der Ansatz wie ich das lösen kann.
Ziel wäre, dass am Switch Node der Wert als Number raus geht ja nach abzufragenden Wert.
@mickym Hast du da vielleicht bitte einen Ansatz?Vielen Dank
-
@_r_a_l_f_ Das ist ein Objekt und da muss gar nichts konvertiert werden. Es ist ein Array, mit allen Werten die Du bekommst.
Setze die msg.payload mit einer Changenode einfach auf payload.0.day_difference_EVUImport etc.
Da Du mit einer SQL Abfrage in der Regel nicht nur 1 Wert, sondern viele Werte zurückbekommst würde ich mir IMMER das Array ausgeben und dann auf die einzelnen Werte zugreifen.
-
Irgendwann wird es klar. Wie gesagt eine SQL Abfrage kommt immer ein Array zurück, da ja nicht alle Werte der Abfrage einzeln zurückkommen.
Ansonsten liefert mir nicht nur den Flow, sondern die Daten wie sie aus der Quelle, also wie aus der SQL Node rauskommen und stellt die hier in CodeTags ein. Ich muss jedesmal mit einer Inject Node - eure Daten nachbauen und eintippen und das macht keinen Spaß:
Hier der Import:
-
@mickym said in SQL Werte separat über Switch Node ausgeben:
Setze die msg.payload mit einer Changenode einfach auf payload.0.day_difference_EVUImport etc.
Danke für diesen entscheidenden Tipp
Somit war es dann eigentlich recht schnell klar, wie das Thema zu lösen ist.@mickym said in SQL Werte separat über Switch Node ausgeben:
Da Du mit einer SQL Abfrage in der Regel nicht nur 1 Wert, sondern viele Werte zurückbekommst würde ich mir IMMER das Array ausgeben und dann auf die einzelnen Werte zugreifen.
Das stimmt natürlich. Ich möchte ja aber gezielt einzelne Werte abgreifen und solange es nur einen Output DB Gesamt gibt, muss ja irgendwie die Unterscheidung erfolgen
-
@mickym said in SQL Werte separat über Switch Node ausgeben:
Ansonsten liefert mir nicht nur den Flow, sondern die Daten wie sie aus der Quelle, also wie aus der SQL Node rauskommen und stellt die hier in CodeTags ein. Ich muss jedesmal mit einer Inject Node - eure Daten nachbauen und eintippen und das macht keinen Spaß:
Tut mir leid, daran habe ich nicht gedacht bzw. war ich mir nicht sicher, ob der bisherige Flow so hilfreich ist.
-
@mickym
Ich hab hinter der Change Node auch noch eine Switch Node gepackt um "undefined" Messages (wenn das Array nicht definiert wurde auf Grund der nicht vorhandenen Abfrage) noch herauszufiltern:
Viele Dank für die wie immer hilfreiche Unterstützung
-
Jedenfalls Schöne Weihnachten und freut mich ja auch immer, wenn ich helfen konnte.
-
@mickym Das wünsche ich auch
. Ja wenn du nicht bei Node-Red wer dann