Примите следующие операторы для создания контекста на этой странице :
BEGIN TRANSACTION;
CREATE TABLE TABLEA (COLUMN_A VARCHAR2(30));
CREATE TABLE TABLEB (COLUMN_B VARCHAR2(30));
CREATE TABLE MAPPING_TABLE (TABLEA_COL VARCHAR2(30), TABLEB_COL VARCHAR2(30));
INSERT INTO MAPPING_TABLE (TABLEA_COL, TABLEB_COL) VALUES ('COLUMN_A', 'COLUMN_B');
COMMIT;
Я хочу сделать выбор из TABLEB
, используя значение сопоставления, установленное в MAPPING_TABLE
.
Другими словами, зная имя столбца TABLEA
(например, 'COLUMN_A'), я хочу сделать SELECT
непосредственно в TABLEB
.
Что-то вроде:
SELECT /*a statement to recover the COLUMN_B based on the 'COLUMN_A' value*/
FROM TABLEB
Это можно сделать в операторе SQL, или я вынужден использовать контекст PL / SQL (с процедурами и т. Д.)?