Могу ли я использовать переменную в предложении FROM в Sybase IQ 16?
Надеюсь, вы можете посоветовать. Я пытаюсь выбрать одну из таблиц, полученных из списка таблиц, хранящегося в другой таблице. Например, для каждой таблицы, указанной в таблице table_list_table, должно произойти действие. (У нас есть стандарт, согласно которому мы не можем использовать transact sql как часть решения).
begin
declare my_table_var varchar(255);
declare my_increment smallint;
declare my_date integer;
declare my_sum decimal (18,2);
set my_increment = 1;
set my_date = 20200701;
lp: loop
if my_increment = 10 leave lp: end if;
set my_table_var = (
select tablename from table_list_table where table_id = my_increment);
set my_sum = (
select sum(c1)
FROM my_table_var
WHERE date_col = my_date );
set my_increment = my_increment + 1;
end loop;
end
Меня раздражает предложение FROM. Ошибка: "таблица my_table_var не существует", даже если переменная была установлена ранее в операторе.