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

Tabellenvariable in MySQL erstellen

Sie existieren nicht in MySQL, oder? Verwenden Sie einfach eine temporäre Tabelle:

CREATE PROCEDURE my_proc () BEGIN 

CREATE TEMPORARY TABLE TempTable (myid int, myfield varchar(100)); 
INSERT INTO TempTable SELECT tblid, tblfield FROM Table1; 

/* Do some more stuff .... */

Von MySQL hier

"Sie können das TEMPORARY-Schlüsselwort beim Erstellen einer Tabelle verwenden. Eine TEMPORARY-Tabelle ist nur für die aktuelle Verbindung sichtbar und wird automatisch gelöscht, wenn die Verbindung geschlossen wird. Das bedeutet, dass zwei verschiedene Verbindungen denselben temporären Tabellennamen verwenden können, ohne miteinander oder mit einer vorhandenen nicht TEMPORARY-Tabelle in Konflikt zu geraten gleichen Namens. (Die vorhandene Tabelle wird ausgeblendet, bis die temporäre Tabelle gelöscht wird.)"