0

我不确定如何正确使用此语法。

所以我有一个游标循环遍历表 User.Persona 并捕获 Id 列。因此,每次游标迭代时,每个 Id 都会存储到变量cur_id中。每个 Persona Id 将对应一个 Persona Id Table。例如,Persona ID 1 有一个 Persona1 表,Persona Id 2 有一个 Persona2 表。

所以在那个游标中,我想调用表 SELECT....FROM @Persona# WHERE...

我该怎么做呢?

我首先尝试将表名的字符串存储在一个变量中:

DECLARE cur_table VARCHAR(25);

在光标内部:

SELECT CONCAT('persona', @cur_id) INTO @cur_table
SELECT .... FROM **@cur_table** WHERE...

但是,FROM @cur_table会引发错误,我无法引用包含当前表名的字符串。

有没有办法让我在光标中引用不断变化的表名?

谢谢!

4

0 回答 0