Speichern der Ausgabe von SQL Query in Python Variable

Unter Bezugnahme darauf habe ich versucht, meine SQL-Abfrage wie folgt zu ändern:

query2 ="""insert into table xyz(select * from abc where date_time > %s and date_time <= ( %s + interval '1 hour'))""" cur.execute(query2,(rows,rows)) 

Es gab einen Irrtum

  • Sqlalchemy generischen Fremdschlüssel (wie in django ORM)
  • Wie kann ich eine irrationale Zahl auf 100 Dezimalstellen in Python zeigen?
  • Python textwrap.wrap verursacht Problem mit \ n
  • Kann Cherokee eine Fallback / Default-Seite verwenden, wenn ein Reverse Proxy nicht verfügbar ist?
  • Wertfehler: Beim Verschmelzen sind keine negativen Dimensionen zulässig
  • Python ist langsam, wenn es über eine große Liste iteriert
  •  function takes at most 2 arguments(3 given) 

    Gibt es irgendwelche Arbeit um für diesen Fehler?

  • Python urllib2 document.login
  • Python: ctypes + C malloc Fehler. C Speicherproblem oder Python / Ctypes Problem?
  • Abrechnung Verschiedene Fehlerbalkenfarben in Bar-Plot in Matplotlib
  • Welchen Ansatz haben Sie für leichte Python-Unit-Tests auf App Engine verwendet?
  • Zeichne einen String in einen gültigen Dateinamen?
  • Wie benutzt man die neue Unterstützung für ANSI-Escape-Sequenzen in der Windows 10-Konsole?
  • One Solution collect form web for “Speichern der Ausgabe von SQL Query in Python Variable”

    Es gibt etwas fischiges über deine Frage, es sieht nicht richtig aus:

     insert into table xyz (select * from abc where date_time = %s and %s + interval '1 hour') 

    Ich würde vorschlagen:

     insert into xyz (<columns of xyz>) select <columns of abc> from abc where date_time > ? 

    Die Abfrage wurde so bearbeitet, dass es sein sollte:

     insert into xyz (<columns of xyz>) select <columns of abc> from abc where date_time > ? and date_time <= ? + interval '1 hour' 

    Nun, wenn Sie Ihre Abfrage ausführen:

     cur.execute(query2,(ts, ts)) 

    Die Anzahl der Parameter-Marker (?) In der Abfragezeichenfolge sollte gleich der Anzahl der Elemente im Tupel sein.

    Wenn Sie% s in Ihrer Abfrage verwenden (nicht empfohlen), können Sie diesen Variablen Werte zuordnen mit:

     """insert into xyz (<columns of xyz>) select <columns of abc> from abc where date_time > %s""" % (value) 
    Python ist die beste Programmiersprache der Welt.