Я использую ниже запрос, чтобы получить максимальный диапазон всех столбцов всех таблиц в базе данных OracleMax Range и самый высокое значение Номер столбца во всех таблицах в базе данных Oracle
select OWNER,TABLE_NAME,COLUMN_NAME,DATA_PRECISION,(POWER(10,DATA_PRECISION) -1)
from ALL_TAB_COLUMNS where OWNER = 'MASTER' and DATA_TYPE = 'NUMBER' and
DATA_PRECISION is NOT NULL order by TABLE_NAME ASC;
OWNER TABLE_NAME COLUMN_NAME DATA_PRECISION (POWER(10,DATA_PRECISION) -1)
MASTER TABLE_1 COL_1 7 9999999
MASTER TABLE_1 COL_5 7 9999999
MASTER TABLE_2 COL_3 10 9999999999
Я пытаясь получить 6-й номер & 7-й столбец, который должен быть макс этого столбца в этой конкретной таблице и разница между максимальным диапазоном (т.е. (POWER (10, DATA_PRECISION) -1)) и фактическим максимальным значением в таблице.
Ex:
OWNER TABLE_NAME COLUMN_NAME DATA_PRECISION (POWER(10,DATA_PRECISION) -1) MAX_VALUE DIFF
MASTER TABLE_1 COL_1 7 9999999 9994637 5362
MASTER TABLE_1 COL_5 7 9999999 9997637 2362
MASTER TABLE_2 COL_3 10 9999999999 8933999999 1066000000
Как этого добиться?
Могу ли я присоединиться к столам, используя TABLE_NAME?
Ставка, это было бы полезно для многих людей.
Я не думаю, что вы можете сделать это без использования «выполнить немедленное», может быть? – OldProgrammer