La siguinete consulta puede ser utilizada para encontrar las tablas que contienen determinado campo al que se le conoce parcial o totalmente su nombre.
select owner,
table_name,
column_name Nombre,
substr(data_type decode(char_col_decl_length, null,
decode(data_precision, null, null,
'('data_precision
decode(data_scale,0,')',','data_scale')')),
'('char_col_decl_length')'),1,20) Tipo
from all_tab_columns
where column_name like upper( 'nombre_campo_o_parte') '%'
order by owner, table_name, column_name;
Esta consulta es util por ejemplo para realizar conversiones de datos, saber tablas relacionadas cuando no existen claves foráneas, o encontrar el nombre de una tabla cuando se conoce solamente un campo de la misma.
necesitaba encontrar un campo dentro de una base de datos,me funcionó a la perfeccion. GRACIAS!!!
ResponderEliminarExcelente, muchas gracias. Necesito generar un reporte y los campos tienen el valor del mes. Esto me ayuda muchìsimo
ResponderEliminarJusto lo que buscaba!
ResponderEliminarOtra opción más corta:
ResponderEliminarSELECT OWNER,TABLE_NAME,COLUMN_NAME,DATA_TYPE,NULLABLE FROM ALL_TAB_COLUMNS WHERE column_name = upper( 'nombrecolumna');