Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Wie durchläuft man eine Tabelle mit einem Cursor in MySQL?

Die PROCEDURE oben gibt nur eine Zeile zurück, da Sie Ihre Variablen (vDate, vInQty, tOutQty) jedes Mal innerhalb des REPEAT-Körpers aktualisieren.

Mein Vorschlag, das zu beheben, ist:

  1. CREATE TEMPORARY TABLE tmp_table, wobei jede Variable eine Spalte in dieser tmp_table darstellt.
  2. innerhalb der REPEAT-Einfügung in diese tmp_table.
  3. wähle * aus temp_table.
  4. DROP tmp_table. /* Aufräumen */