mysql 遍历所有表并条件查询


use eepm_push;

DROP  PROCEDURE  IF EXISTS FountTable;
delimiter $$
create  procedure  FountTable()
begin
     declare  TableName  varchar (64);   
     
     DECLARE  cur_FountTable  CURSOR  FOR  SELECT  TABLE_NAME  FROM  information_schema.TABLES  WHERE  TABLE_NAME  LIKE  'msgfor%' ;
     DECLARE  EXIT HANDLER  FOR  not  found  CLOSE  cur_FountTable;
     #打开游标
     OPEN  cur_FountTable;
     REPEAT
      FETCH  cur_FountTable  INTO  TableName;
      SET  @SQLSTR1 = CONCAT( 'select * from ' ,TableName, ' where appId = ' , '' '' , 'cc055a4d-53b9-4cfc-9f1a-d8bad41b7502' , '' '' , ' and createTime > ' , '' '' , '2017-02-23 00:00:00' , '' '' );
      PREPARE  STMT1  FROM  @SQLSTR1;
      EXECUTE  STMT1;
      
      DEALLOCATE  PREPARE  STMT1;    
       
      UNTIL 0  END  REPEAT;
   #关闭游标
   CLOSE  cur_FountTable;
  
END  $$
DELIMITER ;
  
call FountTable();


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM