在 SQL 中,可以使用 CONCATENATE 函数或者管道 ||
运算符来连接字符串
-- 使用 CONCATENATE 函数
SELECT CONCATENATE('SELECT * FROM ', table_name, ' WHERE id = ', id) AS dynamic_sql
FROM some_table;
-- 使用管道 || 运算符
SELECT 'SELECT * FROM ' || table_name || ' WHERE id = ' || id AS dynamic_sql
FROM some_table;
这两个查询都会生成一个名为 dynamic_sql
的列,其中包含动态生成的 SQL 语句。然后,您可以在应用程序中执行这些生成的 SQL 语句。
请注意,动态 SQL 可能会导致 SQL 注入风险。因此,在使用动态 SQL 时,请确保对输入进行适当的验证和转义。