【发布时间】:2015-10-06 10:34:47
【问题描述】:
CREATE PROCEDURE data1 (IN v_dt2 VARCHAR(256) , v_col2 VARCHAR(256),col2 VARCHAR(256))
BEGIN
SELECT dt1 as datep, var1 as vars, 'new' as type
FROM samp
UNION all
SELECT v_dt2, v_col2, 'col2' as type
FROM samp
;
END //
DELIMITER ;
CALL data1 ("dt2","var2","old")
在上面的调用语句中,括号中是列名 但是在输出中将参数作为文本而不考虑列名...如何在 UNION ALL 之后的 select 语句中将它们转换为列名
【问题讨论】:
-
请不要使用全大写的标题,这会分散注意力和烦人。
-
简短的回答是您不能将用户变量作为列名或表名
标签: mysql