2016-08-22 1 views
-3

Dans MySQL Procédure, je souhaite compter les lignes d'une table temporaire créée à partir d'une requête dynamique.Compte MySQL Nombre total de lignes de la colonne Afficher les noms de table temporaire

CREATE TEMPORARY TABLE IF NOT EXISTS tmp_Tbl as select * from dynamic_tbl; 

Desc Temporaire tmp_Tbl; say Le champ a 15 lignes donc enregistrer dans une variable de session @TotCols

nouveau Créer une table temporaire à partir d'une requête dynamique: Desc Temporaire tmp_Tbl; dire sur le terrain ont 4 lignes afin d'économiser en @TotCols variables séance

Répondre

0

Dans le corps de votre routine stockée, s'il vous plaît essayer:

SET @create_tmp_table_sql = CONCAT(
    'CREATE TEMPORARY TABLE IF NOT EXISTS tmp_tbl AS ', 
    'SELECT * FROM dynamic_tbl' 
); 
PREPARE create_tmp_table_stmt FROM @create_tmp_table_sql; 
EXECUTE create_tmp_table_stmt; 
DEALLOCATE PREPARE create_tmp_table_stmt; 

SET @TotCols = (SELECT Count(*) FROM tmp_tbl); 
+0

Dans la question que j'ai besoin comment les colonnes beaucoup totales de table temporaire. –