直接使用 query 怎么自动添加表前缀?

1个回答

写回答

Tina0817

2026-02-02 18:20

+ 关注

MySQL
MySQL

在使用MySQL查询语句时,当需要在结果中自动添加表前缀时,可以使用预处理语句来实现。在预处理语句中,通过设置参数的方式将表名和列名存储到变量中,并在查询语句中使用这些变量来代替表名和列名。下面是具体步骤:1. 定义一个包含表名和列名的数组,在循环中遍历每个元素并存储到变量中。sqlCREATE TEMPORARY TABLE temp_table (table_name VARCHAR(200), col_name VARCHAR(200));CREATE TEMPORARY FUNCTION add_table_prefix(table_name VARCHAR(200)) RETURNS VARCHAR(200) DETERMINISTICBEGIN DECLARE prefix VARCHAR(200); SET prefix = CONCAT(',', table_name, ''); RETURN prefix;END;2. 在循环中使用预处理语句执行查询,并将结果输出到结果表中。sqlSET @table_name = (SELECT table_name FROM information_schema.tables WHERE table_name = 'your_table_name');SET @col_name = (SELECT column_name FROM information_schema.columns WHERE table_name = 'your_table_name');SET @sql = CONCAT('SELECT * FROM ', add_table_prefix(@table_name));PREPARE stmt FROM @sql;EXECUTE stmt;这样,在执行查询时就可以自动添加表前缀,并且结果会按照预期输出。

举报有用(0分享收藏

Copyright © 2025 IZhiDa.com All Rights Reserved.

知答 版权所有 粤ICP备2023042255号