Я пытаюсь реплицировать кусок кода SQL, который работает на базе данных Oracle, для работы также в SQL Server. По сути, мне нужно выбрать определенные столбцы (определенные) из нескольких таблиц в одну таблицу - это как объединение только с переменным количеством таблиц. Точные имена таблиц не определены, поэтому в Oracle я использую user_tables, такие как '% ABC%', чтобы получить список всех таблиц, и dbms_xmlgen.getxmltype для выполнения созданного оператора select.
В Oracle у меня работает следующий код ...
select table_name,
dbms_xmlgen.getxmltype('select id,name from '|| table_name).extract('/*') rec
from user_tables
where table_name like '%ABC%';
Я знаю, что мог бы создать переменную и выполнить ее в таблицу, но мне нужно, чтобы это был оператор SELECT так же, как кусок оракула. Возможно ли что-то подобное в SQL Server?
ОБНОВЛЕНИЕ: я хотел бы, чтобы 'выполненный' результат универсального оператора SQL => вывод имел два столбца, table_name в качестве первого столбца, а второй столбец (REC) содержит блок XML результата выбора для каждой таблицы.
Требуемый выходной образец