在MySQL存储过程中创建临时表?
要在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;
阅读更多:MySQL 教程
输出结果
这将产生以下输出结果 −
+-----+
| 500 |
+-----+
| 500 |
| 300 |
+-----+
2 rows in set (0.00 sec)