使用预准备语句创建临时表

时间:2015-12-17 18:09:29

标签: php mysql

我一直在尝试更改现有表并将结果插入带有memoery引擎的临时表

1)步骤 - 我从现有表格中转换行和列

SET @sql = NULL;
SELECT
  GROUP_CONCAT(DISTINCT
    CONCAT(
      'MAX(IF(`parameterId` = ', `parameterId`, ',`valueId`,NULL)) AS parameter', `parameterId`)
  ) INTO @sql
FROM product_parameter;

SET @sql = CONCAT('SELECT productId , ', @sql , ' FROM product_parameter GROUP BY productId');

PREPARE stmt FROM @sql;

当我执行stmt语句时,它会显示结果

2)步骤 - 我想将结果插入临时表或测试物理表

CREATE TEMPORARY TABLE IF NOT EXISTS temporaryTable ENGINE=MEMORY AS

是否有可能通过一个查询来实现我的目标?或者我应该创建表然后以某种方式添加结果数据?

1 个答案:

答案 0 :(得分:0)

您应该创建临时表并填充它。