У меня есть главная таблица с двумя столбцами с именами таблиц и идентификаторами. И у меня есть те таблицы с именами таблиц в моей БД.Как получить имя таблицы из значения столбца в оракуле sql?
Например, я нахожу определенное имя таблицы, выбрав id. И затем я хочу заполнить таблицу этим именем данными. И я хочу сделать это в одном запросе. Как я могу это сделать?
Цель: заполнить данные сразу всеми таблицами, имеющими имена, похожие на значения в столбце имени таблицы из основной таблицы.
Вот как я получаю список таблиц. Вероятно, я должен пройти через него.
select tbl from asp_tbl where asp in (
select id from (
SELECT * FROM DIMENSION WHERE EXTERNALKEY LIKE 'W16%')
);
И тогда я попытаюсь объединить данные из других таблиц внутри таблицы, которая должна быть заполнена:
MERGE INTO tbl d
USING
(SELECT ? nums, ? names from data_table) s
ON(d.product = s.product and d.ga = s.ga and d.metric_id = s.metric_id)
WHEN MATCHED THEN UPDATE SET d.names = s.names
WHEN NOT MATCHED THEN INSERT (nums, names)values(s.nums,s.names);
ли я предоставить достаточно информации?
Какие данные вы хотите использовать для заполнения таблиц? Кроме того, вы не можете сделать это в одном выражении, вам нужен динамический SQL. Отправьте пример того, как заполнить таблицу, как только вы найдете в своей таблице таблиц – Aleksej
, которая должна быть заполнена, имеет два столбца: числа и имена. Итак, скажем, я просматриваю список моих таблиц в главной таблице и заполняю их уникальными для каждой из них данными. – Trex87
Пожалуйста, предоставьте надлежащий тестовый пример с небольшим подмножеством вашей проблемы, включая то, где вы находитесь и что вы ожидаете достичь. Это похоже на динамический SQL, но без надлежащего случая трудно предложить решение. –