MySQL UNION stored procedure pivot tables

Viewed 31

I need to be able to Union the results of 3 Stored Procedures. The Procedures are coded the same but produce different results.

I have tried creating temporary tables within each procedure and UNION ALL on those within another procedure, but it is not giving me the expected results.

Thank you.

DROP PROCEDURE IF EXISTS CONVERTOPCOLTOROWS;
DELIMITER $$
CREATE PROCEDURE CONVERTOPCOLTOROWS (IN n_seq INT)
BEGIN 
SET @my_schema='femlinecycletime';
SET @my_table='table_seqcycletime';
SET @clause_where='`Seq`=';
SELECT GROUP_CONCAT(my_query
    SEPARATOR ' UNION ALL ')
INTO @sql FROM
    (SELECT
        CONCAT('SELECT', QUOTE(COLUMN_NAME), ' AS `KEY`, `', COLUMN_NAME, '` AS `value` FROM `', @my_table,'`WHERE ', @clause_where, n_seq) my_query
    FROM
        (SELECT `COLUMN_NAME` FROM `INFORMATION_SCHEMA` . `COLUMNS`
            WHERE `TABLE_SCHEMA` = @my_schema
            AND `TABLE_NAME` = @my_table 
            AND `COLUMN_NAME` BETWEEN 'OP02' AND 'OP90') AS `col1`) AS `col2`;
            
PREPARE stmt1 FROM @sql;
EXECUTE stmt1;
DEALLOCATE PREPARE stmt1;
End;
$$
DELIMITER ;
0 Answers
Related