在 MySQL 过程中创建临时表?

mysqlmysqli database更新于 2025/5/23 8:44:17

要在 MySQL 过程中创建临时表,语法如下 −

CREATE PROCEDURE yourProcedureName()
   BEGIN
      CREATE TEMPORARY TABLE yourTemporaryTableName SELECT yourValue;
   END

让我们实现上述语法来创建临时表并在表中插入一些记录。以下是在其中创建存储过程和临时表的查询 −

mysql> DELIMITER //
mysql> CREATE PROCEDURE create_Temporary_Table()
   -> BEGIN
   ->    CREATE TEMPORARY TABLE tmpDemoTable SELECT 500;
   -> END//
Query OK, 0 rows affected (0.15 sec)

以下是在表中插入记录的查询 −

mysql> CREATE PROCEDURE insert_Record_InTempTable()
   -> BEGIN
   ->    INSERT INTO tmpDemoTable VALUES (300);
   -> END//
Query OK, 0 rows affected (0.06 sec)

mysql> DELIMITER

现在您可以调用上述存储过程来创建临时表 −

mysql> call create_Temporary_Table();
Query OK, 1 row affected (0.00 sec)

mysql> call insert_Record_InTempTable();
Query OK, 1 row affected (0.00 sec)

使用 select 语句显示表中的所有记录 −

mysql> select *from tmpDemoTable;

输出

这将产生以下输出 −

+-----+
| 500 |
+-----+
| 500 |
| 300 |
+-----+
2 rows in set (0.00 sec)

相关文章


有用资源