DELIMITER $$
CREATE
PROCEDURE `antitheft_location`.`query_table`(IN time_str VARCHAR(50))
BEGIN
SET @tableName = CONCAT('at_locator_device_location_2017ibpdxihhda_',time_str);#
SET @q_sql = CONCAT('select * from ',@tableName);
PREPARE sqlq FROM @q_sql;
EXECUTE sqlq;#执行查询
DEALLOCATE PREPARE sqlq;
END$$
DELIMITER ;
注:
antitheft_location数据库名称
query_table存储过程名称
IN 参数类型:入参
time_str 参数
CONCAT('at_locator_device_location_2017ibpdxihhda_',time_str) 表示('at_locator_device_location_2017ibpdxihhda_'+time_str)
运行存储过程call query_table('20181121')